【发布时间】:2018-02-11 16:15:30
【问题描述】:
在我使用 ASP.NET Core 2.0 的解决方案中,我有三个项目:A、B 和 C。我希望项目依赖项的行为是 A 依赖 B、B 依赖 C 和 C 没有依赖项.
在 ASP.NET MVC 5 中,这很容易通过将 A 设置为引用 B 并将 B 设置为引用 C 来实现。但是在 Core 中,当一个项目依赖于另一个项目时,它也会继承该项目的所有依赖项。在这种情况下,这意味着 A 继承了 B 对 C 的依赖关系。可以在 Visual Studio 的解决方案资源管理器中看到这种依赖关系:。
我希望 A 依赖于 B,但没有 B 的依赖项,例如:。
有谁知道如何通过 Visual Studio 或 .csproj 文件完成我想要的行为?谢谢!
【问题讨论】:
-
2.0 的新特性之一不就是当你构建项目的发布版本时,只引用它使用的依赖项吗?虽然我不确定它是否能完全解决你的问题,但你可以看看它是如何工作的。
-
@JohanHerstad 谢谢,我已经研究过了,但认为它不会解决我的问题。我想以这种方式设置我的项目的最大原因之一是它甚至不会在“显示潜在修复”中建议 using ProjectC 语句。这将使从事项目 A 的任何开发人员都无法意外引用项目 C。
标签: c# asp.net-core dependencies projects-and-solutions asp.net-core-2.0