Welcome

首页 / 脚本样式 / ExtJS / Spring.Net+NHibenate+Asp.Net mvc +ExtJs 系列 2----整体架构

Spring.Net+NHibenate+Asp.Net mvc +ExtJs 系列 2----整体架构2010-07-17 博客园 孤独侠客就以一个简单的DirectCenter项目开始介绍这个框架吧,DirectCenter主要分为用户管理,部门管理,公司管理三个模块。首先先搭建起解决方案DirectCenter:

DirectCenter:

DirectCenter.Model (类库项目)实体类库,其中包括hibernate映射文件(可以把映射文件放到DAL层,这样使Model也比较单纯,而DAL则只是Nhibernate的完整实现)

DirectCenter.IDAL (类库项目)数据访问层接口

DirectCenter.DAL (类库项目)数据库访问层实现(采用NHibernate)

DirectCenter.IBLL (类库项目)业务层接口

DirectCenter.BLL (类库项目)业务层实现(使用IDAL,通过spring.net的IOC注入实际的数据访问层)

DirectCenter.App (类库项目)系统的配置,其中包括Nhibernate,Spring.net的一些配置信息,业务层的DAL注入.

DirectCenter.UnitTest (类库项目) 使用nunit对业务层进行单元测试

DirectCenter.DTO (类库项目) data transform object 用于和前台UI层交互的实体。之所以分出来,也是为了考虑不只是为了Web项目,同时包括WebService等其它UI.(可能会有不少人会问已经有Model了,为什么还需要DTO?)

DirectCenter.Controllers (类库项目) Web控制器。用户请求和后台业务层的中转,接收并分析用户请求,调用业务层完成请求,再分发给用户。(注意这里调用的是IBLL,是业务逻辑接口,也是通过Spring.Net的IOC注入具体的业务实现)。

DirectCenter.Web (Web Application) 单纯的View层,主要由ExtJs完成界面和Ajax请求。

当然,这里也可以加一个Controllers的单元测试项目,不过我觉得这里很多时候用处不是很大。因为这里Controllers的工作比较统一和单纯了。

首先先设计和建立数据库,字段和说明如下: