我们使用 VS 2010 开发了一个包含约 35 个项目的大型解决方案,现在我们正在考虑迁移到 VS 2012 Ultimate。我将解决方案文件转换为 VS 2012,一般来说,一切正常。
但是每当我打开解决方案时,我都会在解决方案中的某个项目 A 上收到一些警告:“无法引用项目 X”“无法引用项目 Y”......其中 A 具有对 X 和 Y 的项目引用。当我构建解决方案时,我收到无法找到每个相应 DLL 的元数据的错误。
当我查看解决方案资源管理器中的引用时,它们标有黄色警告符号。只要我单击参考,警告就会消失,图标看起来很正常。然后我可以毫无错误地构建!
每次打开解决方案都会出现问题,受影响的项目总是一样的。
有没有其他人经历过这种奇怪的行为?再次删除和添加项目引用没有帮助......
先感谢您。
编辑:我检查了引用项目的 csproj 文件,我想知道所有有上述问题的项目引用 GUID 都是小写的,其他项目是大写的。
<ProjectReference Include="..\Presentation.Net\Presentation.Net.csproj">
<Project>{04004c6b-76c8-4f2d-9fcf-5a866bb80fd4}</Project>
<Name>CMS.Presentation.Net</Name>
</ProjectReference>
在解决方案中,GUID 是大写的:
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Presentation.Net", "Presentation.Net\Presentation.Net.csproj", "{04004C6B-76C8-4F2D-9FCF-5A866BB80FD4}"
有任何想法吗?