【问题标题】:Visual Studio 2017 disable Dependency ValidationVisual Studio 2017 禁用依赖关系验证
【发布时间】:2017-06-14 06:44:31
【问题描述】:

如何在 Visual Studio 2017 RC 中禁用依赖关系验证? 每当我打开 C# 解决方案时,它总是在解决方案资源管理器中显示一条消息:“需要更新一个或多个项目以执行依赖关系验证”,并带有更新按钮。 当我第一次打开它时,它会自动更新我以后必须删除的包和配置文件。

我需要在 VS2017 和 VS2015 之间共享解决方案,并且不想引入任何向后不兼容。

【问题讨论】:

  • 您可能已经注意到它比这条消息更糟糕。此分析器包不会将自身添加为 developmentDependency="true" ,因此如果您将其添加到由 nuget 打包的库中,您可能会强制您的包的消费者也安装依赖关系验证分析器。

标签: c# visual-studio visual-studio-2017


【解决方案1】:

您可以按语言禁用它。

转到工具 -> 选项 -> 依赖关系验证

【讨论】:

  • 对我不起作用(Visual Studio 2017 v15.6.5)。我将两者都设置为 False,但打开解决方案后,它再次显示“需要更新一个或多个项目以执行依赖关系验证”。
  • 我都设置为false 并且可以像@StingyJack 观察到的那样确认,这个解决方案不起作用。
【解决方案2】:

对项目所做的更改与 Visual Studio 2015 Update 2 或更高版本兼容。

项目更新所做的只是添加对Microsoft.DependencyValidation.Analyzers NuGet 包的引用,并将依赖验证模型文件的链接添加为AdditionalFile,以便将其传递给Roslyn 分析器。

依赖关系验证分析器使用 Roslyn 1.2(随 VS2015 更新 2 提供),而不是随 VS2017 提供的较新版本的 Roslyn,以便分析可以在旧版本的 Visual Studio 中工作。

Tools-Options-Dependency Validation 选项的作用与对话中的描述完全一致:如果您使用依赖验证(即有解决方案),它控制是否在金条中显示警告具有依赖关系验证图的建模项目)但关闭了代码分析设置完整的解决方案分析Jean-Marc Prieur's blog post 解释了为什么在使用依赖项验证时您可能希望打开完整的解决方案分析。

【讨论】:

    【解决方案3】:

    如果您真的希望链接消失,请查看此页面上的最后一篇文章:

    https://developercommunity.visualstudio.com/content/problem/102206/one-or-more-projects-needs-to-be-updated-to-perfor.html

    “我遇到了同样的问题,我删除了“架构和分析工具”(在 VS 设置中,右侧的“.NET 桌面开发”下)并且这个“依赖关系验证”不再出现(但请注意,您无法再加载建模项目类型)”

    像魅力一样工作!

    【讨论】: