我将在C#中编写自己的DAL。我决定使用'工作单元'模式(下次提到uow)作为范围和存储在HttpContext.Items中的身份映射。
我现在有关于实施CRUD方法的问题。他们如何/在哪里实施?它们是在每个业务类中实现的(如在活动记录模式中)还是以某种方式在uow类中实现(如果是,如何)?
我还假设我需要使用范围而不仅仅是请求,还需要使用数据库连接。但是怎么样?我是否应该在请求开始时打开连接并在uow处理时将其关闭?
我们非常感谢您的每一条建议,特别是您的“真实世界”体验。
谢谢大家:)
答案 0 :(得分:1)
听起来,你正试图开发自己的Object-relational mapping。我会说,不要试着去写你自己的。
On-topic是nHibernate ORM软件包的主要贡献者之一,Davy Brion编写了一个教程,其中包括如何逐步编写简单的ORM。
他说他花了24小时编写教程,所以不要指望它附近有生产就绪的ORM包。
此外,本教程旨在解释ORM的工作原理,而不是实际激励您为产品nHibernate撰写竞争对手,这是他所贡献的产品。