【问题标题】:Unresolved project references only on first load of a solution仅在首次加载解决方案时未解决的项目引用
【发布时间】:2014-03-14 14:02:02
【问题描述】:

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

详细说明:

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

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

其他信息:

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

虽然问题不是很关键,但是很不方便,也很费时间。

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

【问题讨论】:

  • 你说的外部项目是什么意思?这是一个解决方案项目还是一个引用到一个组件,比如一个组件?外部是指您的外部 thing 不在您的解决方案之下。它在哪里? (GAC?)
  • 只是对一个项目的项目引用,它不在解决方案中。它包含在其他解决方案中。

标签: c# .net visual-studio-2010 projects-and-solutions project-reference


【解决方案1】:

尝试在您的所有项目中安装此软件包。

我也遇到过类似的事情。我添加到一个已经有另一个解决方案的解决方案项目中,并且引用错误。

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

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-12-21
    • 2012-05-18
    • 1970-01-01
    • 2021-11-10
    • 1970-01-01
    • 2010-09-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多