概要 多租户(Multi Tenancy/Tenant)是一种软件架构,其定义是:在一台服务器上运行单个应用实例,它为多个租户提供服务. 本框架使用的是共享数据库.共享 Schema.共享数据表的数据设计架构. 操作说明 进入系统管理员界面,打开租户管理界面,如下图所示: 下面是租户管理界面: 这里可以管理租户成员,也可以让管理员绑定微信. 下面是公众号配置界面: 这里可以配置公众号的信息. 系统管理员不仅可以管理自己的租户,还可以管理其他租户内容——公众号管理. 下面是公众号管理界面: 架构实…
主要内容如下: 添加项目Magicodes.WeiChat.Data.Multitenant,全面支持多租户(基于EF已经ASP.NET Identity) 增加租户管理.租户成员管理.修改密码.公众号配置等功能 增加关键字回复功能,支持回复图片.文字.语音.视频.多图文等.并支持图片.语音.视频放大查看. 添加TenantBaseController(多租户控制器基类),以便于自动注册租户筛选器以及设置相关配置. 添加IDeleted接口,以便于后续封装软删除. 添加EnumHelper,通过…
购买地址:https://item.taobao.com/item.htm?id=520205558575 您可以在新标签页打开此图,以查看原始图片. Magicodes.WeiChat为湖南心莱信息科技有限公司Magicodes系列产品之一,已获得软件著作权证书. V4.1 (2016.11.30) 本次更新内容比较大,请谨慎更新(尤其是权限部分代码,可能会影响您已扩展的业务逻辑,请根据自身业务考虑是否使用) 重写自定义菜单处理 重写左侧导航加载逻辑 更新包Magicodes.Echarts.…
Demo访问地址:http://wechat.magicodes.net/app/AppDemo/WeChatOAuthTest?tenantId=1 关于公众号如何获取用户信息,请参考此文档:http://mp.weixin.qq.com/wiki/17/c0f37d5704f0b64713d5d2c37b468d75.html WeChatOAuthTest演示了如何通过特性“WeChatOAuth”通过微信网页授权获取用户基本信息. 1.配置权限 在开始之前,需要在开发者中心修改[网页授权…
关于T4代码生成这块,我之前写过几篇帖子,如:<Magicodes.NET框架之路——让代码再飞一会(ASP.NET Scaffolding)>(http://www.cnblogs.com/codelove/p/4251533.html).<Magicodes.NET框架之路——让Magicodes.NET帮你编写代码>(http://www.cnblogs.com/codelove/p/4232659.html).ASP.NET Scaffolding虽然有些不足,但是思虑再三…
本框架支持缓存管理,内部机制使用开源库CacheManager.支持全局缓存.租户缓存,默认使用的系统缓存实现,可以在Web.config将其配置为其他缓存类型,比如支持Redis.内存等. 开源库地址:https://github.com/MichaCo/CacheManager 1.1.1 配置 默认配置如下,见Web.config cacheManager元素内容: <!--缓存配置--> <cacheManager xmlns="http://tempuri.org/C…
本人一向比较喜欢折腾,玩了这么久的knockoutjs,总觉得不够劲,于是又开始准备折腾自己了. 最近在完善Magicodes.WeiChat微信开发框架时,发现之前做的自定义菜单这块太不给力了,而各种第三方平台在这一块做得也比较渣,功能不全不说,界面还很不友好,于是决心重整一版,以满足需求. 下面先上图,新的UI界面如下所示: 如何实现这个功能呢?下面请等我一一道来吧. 左侧树形结构绑定 HTML模板如下所示: <div class="dd" id="nestable…
纷纭,是个免费的渠道集成工具.这里我就不多介绍了,右侧是飞机票:https://lesschat.com/ 在开发或者在运维情况下,我们经常需要查看并关注服务器端日志以确保程序是否健康运行.尤其是在微信开发过程中,我们经常要查看微信参数是否正确,而微信浏览器并不易于调测,故能够即时看到调测日志对我们来说相当重要,并且能够极大的提高开发效率. 而查看日志,我们还需要找到最近的日志文件查看最新日志,过程繁琐且不友好,并且需要自己主动去查看,没法关注重要信息.于是有了将日志信息推送到纷纭的想法,以实现…
跨站脚本攻击(Cross Site Scripting),为不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS.恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页之时,嵌入其中Web里面的Script代码会被执行,从而达到恶意攻击用户的特殊目的. 很多时候,我们并不需要屏蔽所有的HTML标签,或者,我们需要设置某些属性支持的HTML标签字符串.还好,框架中封装了相关的特性,以便你直接拿来使用. 命名空间:Magicode…
Magicodes.WeiChat同时也致力于提高后台开发效率,因此对在后台前端这块也做了一定的封装.我们先来说说主要的框架JS——mwc.js和mwc_elements.js.这两个JS文件位于Scripts目录下的app目录: · mwc:前端框架定义,可以理解为接口定义 · mwc_elements:基于前端框架定义的具体实现 主要API功能如下: 1日志 日志函数用于向浏览器控制台输出日志信息,比如调试信息.警告信息.错误信息.灾难信息等等,兼容主流的浏览器.后续还会增强相关函数,目前只…