首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >整洁的架构:为什么在Api和数据库层之间直接引用?

整洁的架构:为什么在Api和数据库层之间直接引用?
EN

Stack Overflow用户
提问于 2021-09-10 16:56:43
回答 1查看 47关注 0票数 0

让Api项目(例如:.Net核心Api MVC)需要直接引用数据库项目,以便将DbContext作为服务注入,这似乎与干净架构的目标相矛盾:

代码语言:javascript
复制
services.AddDbContext<IDatabaseService, DatabaseService>();

层应该是独立的,并且不知道特定的实现,在本例中是DatabaseService类。我在几个教程中看到了这种方法。

我想知道如何改进这一点?也许是一个致力于依赖注入的中心(核心)项目层?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-10 19:08:07

IOC通常是我们实现抽象和干净架构的方式,在IOC容器中完全允许各种耦合。

然而,您通常是正确的,因为直接依赖于DbContext而不是像Repository Pattern这样的东西会使事物与数据库紧密耦合,从而破坏了清洁代码。这是许多开发人员做出的妥协,只是因为他们觉得不太可能分解应用程序并将其与相关数据库解耦。

当然,他们可能是非常错误的,如果他们认为他们的上下文太大,并且他们需要将一部分分解到它自己的服务中,他们将需要进行一些重构。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69135595

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档