0

简短描述:首次加载解决方案会将外部项目引用标记为无效,重新加载解决方案可解决问题。

详细说明:

我们的系统中有大量的 C# 项目,而几个不同的解决方案只包含少量项目。这些项目通过项目引用而不是直接引用 dll 相互引用。引用的项目不是解决方案的一部分。

我在使用这些解决方案时遇到了一个奇怪的行为:每次我第一次打开一个解决方案时,这些外部项目引用在引用树下被标记为无效,并且某些功能无法正常工作(例如代码分析、ReSharper 引用、等)构建解决方案是可能的,没有错误。但是,当我重新加载解决方案时,所有引用都将再次有效

附加信息:

  • 如果我更改了其中一个项目文件中的某些内容,这会触发解决方案中项目的重新加载,则引用再次被破坏,我必须重新加载解决方案两次才能修复它们。
  • 如果我将外部项目添加到解决方案中,则不会出现问题。
  • 如果我关闭 Visual Studio 并在下次启动时加载最后一个解决方案,则引用将有效。只有加载另一个解决方案才会触发问题。

虽然问题不是很关键,但是非常不方便和耗时。

我们正在使用 Visual Studio 2010 和 .NET 4.0(还安装了 Visual Studio 2012)。

4

1 回答 1

0

尝试在所有项目中安装这个包。

它发生在我身上类似的事情。我添加到一个已经有另一个解决方案的解决方案项目中,并且引用错误。

这个包解决了这个问题,至少对我来说。

https://www.nuget.org/packages/NuGetReferenceHintPathRewrite

于 2014-03-14T14:06:13.030 回答