之前已发个文章分享刚完成的版本(http://www.cnblogs.com/kudy/archive/2011/11/07/2237802.html),这个是最近对MSH重构后的调整版本,修正了之前存在的几个小bug,也是最后分享出来给大家学习的版本。特别说明:源码分享出来主要不是让大家直接用,而是从中学习某方面值得你学习的,另一个目的是让大家对MSH进一步的了解,因为此系统使用了它提供数据访问。
主数据管理系统(Master Data Management System),本人开发它的目的是用来管理/整合公司内部所有子系统,包括用户、角色、权限(权限管理,授权与验权基础实现),同域名情况的单点登录,等等主要数据的管理。
点击下载最终分享版 (VS2008/VS2010、.Net 3.5)
下载后必须要了解的:
一、数据库创建与初始化数据
在SQL server 2005/2008 下新建名为 Db_Mdms 的数据库,然后按顺序执行目录 Documents\Mdms.Documents\DB 1.0\Scripts 里的sql
1_tables.sql
2_functions.sql
3_stored-procedures.sql
4_init_data.sql
二、修改数据库连接信息
在目录 build\Mdms.Msh 里修改 Mdms.MSH.exe.config 的配置节点 Mdms.Db_ConnectionString 的值为你自己的数据库连接
三、在vs2010中运行Web项目 Mdms.Web 或右键选择 default.aspx 页面点击在浏览器中浏览,然后打开目录 build\Mdms.MSH,双击Mdms.MSH.exe运行之
这时,你可以用默认用户/密码 admin/admin888 登录系统了
在线demo: http://mdms.kudystudio.com/
用户/密码:test1/test1 test2/test2 (注:同一用户在另一浏览器登录,另一用户在session失效后会被逼下线)
demo站放在一个香港的VPS主机上,配置比较低,速度慢也是正常的,主要也放自己的个人网站。
下面对整个解决方案的项目进行简要说明。系统是多层架构+WCF服务+MTV表现层完成的;其中WCF服务使用了MSH来托管,当然你也可以自己另写程序来托管WCF服务;MTV表现层框架是本人写的一个使用习惯和MVC差不多的框架,功能比较简单,如果你想用MVC,转换也不麻烦,因为使用上都差不多。
了解MSH请看这篇文章: 【MSH】一个轻量级但很实用的WCF模块服务框架+WCF模块服务托管程序MSH[开篇]
因为MTV框架还没完善,只在本人公司里使用,等功能完善了,基本扩展性也完成了会另写文章对它进行介绍。
在另一文章里还专门对此系统的权限管理进行了解说: 如何给多个子系统设计一个简单通用的权限管理方案?
另外还使用了本人写的一个js窗口插件: 【jBox】2.3正式版 多功能jQuery对话框插件下载及常见使用问题解答
1.项目 Core/Mdms.Utility 是整个项目的公共功能库。
2.项目 Core/Mdms.Model 是整个项目要使用的数据模型类库,其中DbModels里放的是与数据库的表一一对应的数据模型,其它的是为业务层需要写的扩展性模型。
3.Msh/Db 下的三个项目相信大家都很容易理解,Mdms.Data为数据访问库,根据配置创建数据实现对象并返回接口,Mdms.IDataProvider为数据接口定义库,Mdms.SqlServerProvider为SqlServer的数据接口实现库,是提供给Msh/Modules 下的模块服务使用的,因为采用上用WCF来提供数据访问。
4.项目 Msh/Mdms.Msh 是使用MSH而写的基本功能库,方便Msh/Modules下的模块服务开发。而Mdms.BusinessBase项目是所有子系统都要使用的业务基础,里面主要实现了同域名下的单点登录,还有权限验证需要的基本功能使用。
5.Web 目录下的三个项目主要就是业务的封装和表现层的东东了。项目Mdms.Business是系统的业务封装,项目Mdms.Web是网站,项目Mdms.Web.Mtv是使用MTV框架需要的模块类与过虑器(和MVC里的控制器和过虑器相对应)。
http://files.cnblogs.com/kudy/Mdms_Shared_Final.rar
简介完毕,希望能给大家带来帮助:)