主要内容如下:

  1. 添加项目Magicodes.WeiChat.Data.Multitenant,全面支持多租户(基于EF已经ASP.NET Identity)
  2. 增加租户管理、租户成员管理、修改密码、公众号配置等功能
  3. 增加关键字回复功能,支持回复图片、文字、语音、视频、多图文等。并支持图片、语音、视频放大查看。
  4. 添加TenantBaseController(多租户控制器基类),以便于自动注册租户筛选器以及设置相关配置。
  5. 添加IDeleted接口,以便于后续封装软删除。
  6. 添加EnumHelper,通过GetDisplayName可以获取枚举值的显示值(DisplayAttribute)。
  7. 添加EntityFramework.DynamicFilters:https://github.com/jcachat/EntityFramework.DynamicFilters,添加多租户数据过滤器AppEntryFilter,添加软删除过滤器IsDeleted
  8. 完善微信配置管理器,并增加函数注入功能。移除Magicodes.WeIChat.FrameWork对Magicodes.WeIChat.Data的引用,并且移除模板消息接口对数据库的访问,采用函数注入的方式。
  9. 增加粉丝管理、用户组管理、模板消息的多租户支持
  10. 添加关键字处理日志
  11. 增加对微信服务器事件转发多租户支持。并且当微信服务器转发事件验证错误时,会在错误日志中提示。完善微信配置的保存。
  12. 增加自动回复的日志记录。
  13. 返回JSON日期时间格式化。
  14. HMTLHelperExtensions增加IsSelectesUrl,以更好的匹配路径。
  15. 增加站点资源管理,管理站内和公众号的语音、视频、图片、文章、多图文等素材。
  16. 完善restApi的success判断。
  17. 完善mwc.restApi.delete请求时,含JSON数据报错的情形。
  18. 站点资源管理增加删除功能。
  19. 当关键字未匹配时,支持返回关键字列表。并且优化关键字回复。
  20. 重构消息推送,并且增加视频推送。
  21. 优化mwc.js中的弹窗函数,使其在多层弹窗时,窗口大小更友好。
  22. 增加media-choice,支持多种资源选择。
  23. 自定义菜单重构。media-choice支持编辑、禁用、传递类型。并且完善自定义菜单高度。
  24. 修复粉丝管理因为性别改为枚举类型报错的问题。
  25. 修复素材管理——图文消息管理点击添加按钮添加多图文报错。
  26. 修复模板消息查看报错。
  27. 修复全量同步粉丝时同步BUG。
  28. 定义ApiArgumentException异常类,用于传入参数不正确时抛出。
  29. 粉丝批量获取信息接口增加不得超过100的限制。
  30. 增加XmlModelBinder,便于MVC模型绑定。
  31. 修复多租户二维码支持。
  32. 重写多客服账号同步。
  33. 修复菜单数据为空时的Bug。
  34. 增加显示详细错误筛选器,以便于调测。
  35. 模板消息如果未录入模板数据时,抛出提示异常。
  36. 增加百度地图获取经纬度模块。
  37. 修复多图文搜索问题。
  38. 修改分页样式,解决部分浏览器有时候点击无效的问题。

Magicodes.WeiChat——V3.0(多租户)版本发布的更多相关文章

  1. 开源微信管家平台——JeeWx 捷微4.0 微服务版本发布,全新架构,全新UI,提供强大的图文编辑器

    JeeWx捷微4.0   微服务版本发布^_^ 换代产品(全新架构,全新UI,提供强大的图文编辑器) JEEWX 从4.0版本开始,技术架构全新换代,采用微服务架构,插件式开发,每个业务模块都是独立的 ...

  2. PEACHPIE 0.9.11 版本发布,可以上生产了

    PeachPie在官方博客(https://www.peachpie.io/2018/10/release-0911-visual-studio.html)发布了PeachPie的0.9.11版本 - ...

  3. 【Phylab2.0】Alpha版本发布说明

    新版本特性 更多的实验 Part Phylab2.0[Alpha] Phylab1.0 1011 1010113 缺失 1011 1010212 缺失 1021 1020113 1021 102021 ...

  4. 【Phylab2.0】Beta版本发布说明

    新版本特性 1. 新的物理实验 1020314等 2. 讨论区与报告界面的整合 3. 在线脚本管理功能 4. 管理员功能 有在线脚本管理功能的支持后加入了管理员模式,可以向其他学校开放,招募管理员并添 ...

  5. keleyi菜单0.1.5版本发布了

    keleyi菜单是一个让你轻松创建向上弹出菜单的jquery插件. 最新版本0.1.5增加了显示三角形的功能,当一级菜单包含有子菜单时,会在一级菜单的右侧显示一个小三角形.如图所示: 查看例子:htt ...

  6. redis终于有比较大的进展了,redis3.0.1 稳定版本发布,支持集群。

    原文地址:https://raw.githubusercontent.com/antirez/redis/3.0/00-RELEASENOTES Redis 3.0 release notes --[ ...

  7. 痞子衡嵌入式:MCUBootUtility v3.0发布,开始支持LPC, Kinetis啦

    -- 痞子衡维护的NXP-MCUBootUtility工具距离上一个版本(v2.4.0)发布过去2个半月了,这一次痞子衡为大家带来了全新版本v3.0.0,从这个版本开始,NXP-MCUBootUtil ...

  8. 痞子衡嵌入式:MCUBootFlasher v3.0发布,为真实的产线操作场景而生

    -- 痞子衡维护的NXP-MCUBootFlasher工具(以前叫RT-Flash)距离上一个版本(v2.0.0)发布过去一年半以上了,这一次痞子衡为大家带来了全新版本v3.0.0,从这个版本开始,N ...

  9. 面向UI编程:ui.js 1.0 粗糙版本发布,分布式开发+容器化+组件化+配置化框架,从无到有的艰难创造

    时隔第一次被UI思路激励,到现在1.0的粗糙版本发布,掐指一算整整半年了.半年之间,有些细节不断推翻重做,再推翻再重做.时隔今日,终于能先出来个东西了,这个版本很粗糙,主体功能大概能实现了,但是还是有 ...

随机推荐

  1. BZOJ 4710

    枚举几个同学分到了 对于每种特产求一个方案数(经典做法)乘起来 然后容斥 #include<bits/stdc++.h> using namespace std; #define rep( ...

  2. hadoop2-elasticsearch的安装

    本文主要讲elasticsearch-2.2.1的安装过程. 准备工作: 1.搭建虚拟机 你需要先参考 hadoop2集群环境搭建 把你的虚拟机搭建起来-hadoop环境可以先不用搭建(完成步骤1到步 ...

  3. Github把自己的本地项目托管到git上

    开篇之前说下题外话,之前写过一篇博客,IOS-一步一步教你自定义评分星级条RatingBar,群里有人想要源码,我上传到github上了,有需要的可以去看一下,github地址自定义评分星级条 言归正 ...

  4. Could not load file or assembly 'System.Web.Http, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'

    提示哪个引用修改哪个引用的属性: Could not load file or assembly 'System.Web.Http, Version=4.0.0.0, Culture=neutral, ...

  5. 反沙箱——SetErrorMode

    目录 1.前言 2.原理讲解 3.代码实现 4.参考 1.前言 利用SetErrorMode进行反沙箱的技术,在2010年就有被提出,但是之前搜了很久都没有相关内容,这里简单的说一下这个反沙箱的实现. ...

  6. swoole+websocket+redis实现一对一聊天

    如同web端的QQ和微信一样,这是一个web端的聊天程序. 环境:ubuntu + php + swoole扩展 + redis + mysql Redis 实现每个连接websocket的服务都唯一 ...

  7. 手动安装composer详细教学

    1.下载compser.phar 地址 https://getcomposer.org/download/ 2.新建composer.bat 文件,写入“@php "%~dp0compose ...

  8. 基础select语句详解

    在数据库操作语句中,使用最频繁,也被认为最重要的是 SELECT 查询语句.我们已经在不少地方用到了 SELECT * FROM table_name; 这条语句用于查看一张表中的所有内容. 而 SE ...

  9. 微信小程序学习笔记(三)

    一般setData方法多用于点击后改变页面信息或者刷新后与后台交互获取最新的信息 注意: 直接修改 this.data 而不调用 this.setData 是无法改变页面的状态的,还会造成数据不一致 ...

  10. [tkinter]为列表框添加滚动条

    为了给列表框配备滚动条,看来很多别人的博客 终于解决了问题 ,现在我总结一下 from tkinter import * root = Tk() lb = Listbox(root) scr = Sc ...