假设我想实现一个基于 Uncle Bobs Clean Architecture 的 ASP.NET 应用程序。据我了解:
- Asp.Net 本身将在框架圈内
- Asp.Net 控制器将位于网关/接口适配器层
- 我的业务逻辑将在用例/实体层
依赖规则说只允许从外圈到内圈的依赖。
据我了解,依赖规则不仅与控制流有关,而且通常与代码级别的依赖有关。
但是:为了在“网关”圈中有一个 Asp.Net 控制器,它必须从 Asp.Net Controller 类派生。
问题:这会不会违反依赖规则,因为这会引入从“网关”圈到“框架”圈的编译时依赖性?
更新:我在最近的博客文章https://plainionist.github.io/Implementing-Clean-Architecture-AspNet/中更详细地讨论了这个问题