[英]Common nhibernate data access project for MVC3 and SOA project
我目前正在Visual Studio中开发一个解决方案,该解决方案将部署在Windows Azure上。 该解决方案由一个MVC3网络角色组成,其中代表来自SQL Server的数据。 我已经设置了Ninject和Fluent NHibernate,以将视图与数据库和具体实现分离。
我现在想做的是将所有数据访问逻辑(即NHibernate以及用于数据访问的存储库)放入一个单独的c#项目中,以便我可以将该项目重新用于MVC3项目和将来的SOA项目。
有什么想法可以实现这一目标吗? 我想出了如何使用“仅代码”类进行操作,但是使用休眠模式时会遇到一些问题。 我想它与为每个Web请求创建的global.asx中的ISession对象有关。
任何有关简单实现,方案或方法的提示都将非常有帮助。 如果需要,我也可以发布代码-请让我知道详细的内容;-)
问候,马丁
如果我理解正确,那么实现Service
类库(从UI或SOA层获取请求并执行请求)就不会出现问题。 例如-
public class UsersService
{
private ISession _Session;
// Session is injected
public UsersService(ISession session)
{
_Session = session;
}
public IEnumerable<User> GetAllUsers()
{
return _Session.QueryOver<User>().List();
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.