nHibernate,一个n层解决方案+请求建议

Sea*_*eau 6 c# asp.net nhibernate orm

我有机会开发一个稍微复杂的项目,并一直在调查我可以用来解决这个项目的各种方法.通常情况下,我会使用传统的3层方法,但是花了一些时间环顾各种选项之后,我有一种暗示某种ORM可能更合适,我正在考虑nHibernate.但是,我正在寻找有关实现nHibernate的一些指导,更具体地说,我将如何与nHibernate一起构建我的BL和DAL.

使用nHibernate,我会在我的DAL中创建我的对象(或DTO?)并使用nHibernate方法进行CRUD交互.但是我无法理解的是,DAL中定义的对象可能更好地位于BL中,即可以轻松执行验证和其他内容,并且我只使用各种ObjectFactory的/ ObjectRepositories中的DAL .不幸的是,通过我读过的很多文章似乎都没有提到或绕过它,我有点困惑.

在3层系统中使用nHibernate时,更容易接受或更容易实现的方法是什么?或者,通过业务层将对象从数据层暴露到表示的传统方法是什么?

Spe*_*ort 1

我个人使用 nHibernate 的经验让我决定,数据访问层变得如此之薄,将其与业务逻辑分开对我来说根本没有任何意义。您的大部分数据访问代码已经被分成 xml 文件(或各种其他独特的方法,如 Fluent nHibernate),并且由于连接几乎透明地处理,您使用条件对象的查询很少超过几行。