繁体   English   中英

MVC3和SOA项目的通用nhibernate数据访问项目

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM