【发布时间】:2011-05-09 14:36:17
【问题描述】:
我与 NHibernate、XPO、SubSonic、DataObject.net 合作。但是正如您所知,所有这些 ORM 都需要在编程块中打开和关闭会话, 从软件工程方面来看,在业务逻辑层和 UI 层使用数据库会话不是正确的方式。所以我打算将我的 ORM 更改为在我的应用程序的每个部分中都不需要 Session 或 unitofwork 的东西。
你有什么建议吗?
另外,我尝试了 EF4 POCO,但它有一些问题,我还找不到论坛/支持中心来问我的问题!
问题是我认为在 UI 和 Logic 的上层,我不应该将我的代码涉及到会话创建和处理中。我希望 ORM 透明地工作。特别是 XPO 迫使我大量使用 UI 表单中的会话!我不认为这是正确的方式
【问题讨论】:
-
如果所有类库都有相似的编程范式和对你的期望,你似乎更可能误解了如何使用这些库,但你发现它们都是“不正确的方式。”
-
我不太同意——例如,工作单元可以从 UI 的上下文中很好地定义。例如,单个屏幕或工作流可以与单个工作单元相关联。
标签: .net