Common Framework,简称CF,是一套基础框架,可以用于创建基于三层架构的.NET网站(需使用.net 4.0类库)
此处,三层的边界为:页面、逻辑处理、Web控制。所有的请求由CF里的Handler转接到Web控制层,Web控制层调用BLL逻辑处理层处理请求相关逻辑,再由Web控制层根据请求的不同判断是展示页面还是返回数据。
Common Framework 包含了CFBase.dll、CFFW.dll、CFPageControl.dll、CFPUB.dll、CFWeb.dll、CWFW.dll、GeniusTek.dll、WebPub.dll 这8个DLL文件。
CFBase.dll是整个系统的根,封装了对SQL数据库的访问,实现了CF框架中的两类基本页面CtrlPage以及UIPage
其中CtrlPage用于请求控制,UIPage则用于前台展示
CFFW.dll包含了CF框架的一些公用底层类,包括 CF框架的配置读取类CFConfig、CF框架的系统级枚举CFEnums、CF框架的异常类CFException、CF框架的错误记录类ErrorLog、CF框架的用户接口IUsr
CFPageControl封闭了CF框架中的页面控制方法如输出错误信息,输出提示信息、页面根据参数跳转等
CFPUB.dll包含了CF框架的公共方法
CFWeb.dll实现了CF框架在Web层的封装,包括Cache、Cookie、分页等
CWFW.dll是基于CF框架的一些公共方法,与CFFW.dll不同的是,该类库是根据实际项目定制的,是作为基类库的补充类库
GeniusTek.dll实现了CF框架对请求的转发,如构造形如*/handle/TEST.Main/TestClass.aspx?act=TestMethod*的请求时,CF框架会将该请求转发到TEST.Main.Web命名空间下,TestClass类中的TestMethod方法进行逻辑处理
WebPub.dll是对CFBase的具体实现,也是根据实际项目定制的,在里面对UIPage、CtrlPage进行项目自身的封装
1、新建web站点(或web应用程序)
2、包含上述八个dll引用
3、在web站点中添加web.config配置项目名称,项目基类,项目数据库连接,项目日志目录等
4、添加逻辑控制层类库,如第3步中的项目基类名为TEST,则逻辑层名字为TEST.BL.Main
添加对 CFBase,CFFW,CFPUB,CWFW的引用 编写代码进行数据库的方法,逻辑的处理等等
5、添加Web层类库,添加上述除GeniusTek.dll外的七个类库的引用,添加第4步添加的逻辑控制层类库的引用
6、根据页面的不同,Web层的页面继承不同的页面
页面访问类型的页面,继承CFPage(不需要登录)或CFUsrPage(需要登录),在CFUsrPage里获取登录用户的信息,使用UsrInfo对象,可获得如UID、Account等属性
请求控制类型的页面,继承CFCtrlPage,处理请求的方法使用PageAttribute属性进行修饰 使用形式如
[Page(enPageType.SelfPage,true)] private void Deal() 其中enPageType枚举表示返回页面类型,有DefalutPage(表示普通页面),XMLPage(XML页面),SelfPage(自定义页面),通常情况下,若要返回Json等格式化文本,使用SelfPage true表示该请求是否需要登录的用户,不传递或false表示无需登录
CF框架还在逐渐完善中,许多新的理念新的特性将逐步添加到其中,文档也将逐步建立。
由于作者经验缺乏,其中难免有各种问题,如果若您有什么好的建议好的想法还望您不吝赐教,作者联系方式为:aheraa@gmail.com