涉及到的知识点
1、nhibernate
使用nbibernate作为持久层框架。
使用 castle/NHibernate Facility管理会话。
2、Castle/Windsor
client端只依赖于接口,具体实现类的对象创建转移到运行时进行,相应的依赖关系转移到配置文件。
3、ASP.net httpHandlers,httpModules
在httpModules中进行权限验证,将权限控制和业务处理模块进行解耦。
在httpHandlers中实现url重写和httprequest日志记录。
补充
1、 完整的http请求在asp.net framework中的处理流程:
HttpRequest-->inetinfo.exe->ASPNET_ISAPI.DLL-->Http Pipeline-->ASPNET_WP.EXE-->HttpRuntime-->HttpApplication Factory-->HttpApplication-->HttpModule-->HttpHandler Factory-->HttpHandler-->HttpHandler.ProcessRequest()
2、常见的注入方式:构造子注入(Constructor Injection)、设值方法注入(Setter Injection)和接口注入(Interface Injection)
3、NHibernate Facility
可以通过得到ISessionFactory和组件的配置,按照你期望的方式使用。
可以使用isessionmanager组件管理会话(Session)。
对于他插件式框架的实现,目前还没有深究,以后慢慢了解吧。