C# 丢失的参考再次出现?

C# 丢失的参考再次出现?,c#,visual-studio-2010,C#,Visual Studio 2010,我有一个VS2010项目,在我的计算机上编译得很好,但在另一台计算机上抱怨缺少参考。我检查了引用,有一个“接口”有一个感叹号,当文件丢失或有其他问题时是正常的 我点击它一次,选择它,并打算看看它的属性,看看是什么错了,但感叹号消失了,项目可以编译 这是什么魔法 我的问题是,此项目将是使用msbuild的自动生成的一部分,如果不在每个生成代理上手动打开文件并单击“缺少”引用一次,则无法对其进行编译:)检查引用的生成路径并检查生成操作。更改构建顺序也是一个选项 引用的assemply是实际构建操作的

我有一个VS2010项目,在我的计算机上编译得很好,但在另一台计算机上抱怨缺少参考。我检查了引用,有一个“接口”有一个感叹号,当文件丢失或有其他问题时是正常的

我点击它一次,选择它,并打算看看它的属性,看看是什么错了,但感叹号消失了,项目可以编译

这是什么魔法


我的问题是,此项目将是使用msbuild的自动生成的一部分,如果不在每个生成代理上手动打开文件并单击“缺少”引用一次,则无法对其进行编译:)

检查引用的生成路径并检查生成操作。更改构建顺序也是一个选项

引用的assemply是实际构建操作的一部分吗?可能生成顺序不同步,或者是其中一个子项目的复制生成操作


我看到过这样的错误:DLL被复制到输出目录,但前提是我之前编译了另一个解决方案,因为它将DLL复制到了正确的文件夹。

您能比较手动打开文件前后的解决方案和项目文件吗

我怀疑您在引用可能引用特定版本和/或位置的引用时遇到了一些奇怪的情况,这与特定的构建代理不匹配

例如,它是对“任意CPU”版本的引用,而构建代理只构建“x86”版本,还是引用说是v2.1.3.1(并且有一个选项声明或更高版本可接受),并且只存在更高版本,因此VS2010将自动更新对更高版本的引用

过去,当dll不在不同机器上的同一位置时,我们遇到了引用问题,因此必须将dll添加到已知库子文件夹中的解决方案中,或者手动更改项目文件中的path hint子句

开始比较之前和之后。签出解决方案,让它自己修复,然后做一个比较,看看发生了什么变化