[英]Using NHibernate in Asp.Net MVC
大家好,
从MVC的模型组件中使用NHibernate的步骤是什么?
ASP.NET MVC中的Models文件夹应该用于视图模型(将复杂对象返回到controler => view),NHibernate ISessionFactory应该在MVC项目的global.asax中的Application_Start事件中启动。 我建议将Mapping和Entities放在另一个项目中,通常使用名为Mappings / Domain / Persistence的文件夹组合来保持简单。 对于更结构化的解决方案,我将研究DDD层,但这对于小型实现而言相当复杂,并且并非适用于每个项目。
没什么不同,您可以在Web项目的根目录中添加hibernate.cfg.xml并添加映射文件,一切顺利
看一下SharpArchitecture,这是带有NHIbernate的MVC的最佳实践。
我猜想,MVC中nHibernate唯一的特点是处理会话生命周期的方式。 大多数人更喜欢按请求进行会话的实现模式,其中为每个http请求创建一个新会话(在nHibernate中创建会话很便宜)。 相反,会话工厂在创建方面是相当昂贵的,应该为整个应用程序创建一次。
...并且我强烈建议您阅读Jeffrey Palermo撰写的ASP.NET MVC 2 in Action。 它专门使用Asp.net MVC处理nHibernate。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.