在尝试使用实体框架模型优先解决存储库和工作单元模式时,我提出了关注点分离问题。在我的解决方案中,我有 4 个项目:数据、域、存储库、控制台。在我的数据层中,我有 EF、edmx 文件。在域层,我有我的对象,在存储库层,我有 repo 接口和 UOW 类。在控制台层,我尝试在屏幕上写名字。但是为了在屏幕上写名字,我必须将 EF dll 添加到控制台项目并将数据库连接字符串写入 app.config。但我猜这是关注点分离的错误。控制台项目不应该知道 EF,它应该只与 Repo 层通信以使用 Unit of Work(UOW) 类。
这是我的结构:
两个项目使用 EF dll,即
我的简单控制台应用程序引用(这就是我想要的,只使用 repo 层和 domian 层)
我的控制台代码是:
除非我将 EF 添加到项目并将连接字符串添加到项目,否则这里控制台代码不起作用。我究竟做错了什么?任何建议都会有所帮助,我查看了一些 github 项目,但找不到一个没有连接字符串的简单解决方案,app.config
或者web.config