【发布时间】:2015-04-29 10:46:48
【问题描述】:
我想将实体框架封装在一个项目中。该项目将单独进行数据库访问。更新时,我想将域模型映射到 EF。目的是解决方案的其他层不应该了解基础架构。
我的问题是我需要在我的“调用者”项目中引用 EF 才能使其工作。
有没有办法避免这种情况?
解决方案 - 控制台项目 - EntityFrameworkProject(来自 Nuget 的 EF)
【问题讨论】:
-
您是否尝试过使用 Unit Of Work 的存储库设计模式?
-
如果您在存储库项目中为 EF 生成 POCO 对象,您只需要对该项目的引用,并且在您的“调用者项目”中不需要 EF 引用?
-
创建负责数据库连接的项目并创建存储库(工作单元也是个好主意)。使用 DTO 创建一些接口,并且您的其他项目不应包含对 EF 的引用。
标签: c# entity-framework visual-studio