2
A
回答
5
这看起来像您在解决方案中的不同项目中引用了您的依赖项的略微不同的版本。这意味着当你尝试并运行你的项目时,如果你通过依赖关系中的类型引用任何引用,那么你可能会得到意想不到的错误,因为来自同一程序集的不同版本的类型被认为是不同的。
例如
PROJECT1使用依赖性SomeAssembly.dll
是1.0版 Project2的使用依赖性SomeAssembly.dll
但在1.1版 Project2的具有PROJECT1作为依赖
代码在项目2次试图通过如该类型是在SomeAssembly.dll
定义的SomeType
基准从其代码到项目1的代码。由于项目1来自不同版本的程序集,因此无法识别类型,因此项目1将引发错误。
您的问题可能比这更隐蔽,因为大多数这种类型的错误可以被编译器捕获,但如果你有复杂的依赖关系或使用依赖注入编译器可能不一定发现这样的事情。
Visual Studio正在为您提供有效的解决方法,将所有依赖关系重定向到特定的版本。恕我直言,我会避免采取修复,如果你可以自己手动修复它。
通过解决方案并检查所有引用以确保它们全都与版本明智匹配,您会更好。您可能需要删除并添加引用才能正常工作,但现在这样做可以避免长期的意外问题。
相关问题
- 1. 链接器警告C++ Visual Studio
- 2. Visual Studio缺少警告
- 3. Visual Studio的警告C4133
- 4. Visual Studio 2010“System.Web”参考未解决[C#]
- 5. Visual Studio 2012 JavaScript&css参考
- 6. Visual Studio的相互参考
- 7. 查找参考Visual Studio 2010
- 8. Visual Studio 2015 .jar参考
- 9. Visual Studio参考x64 GAC
- 10. Visual Studio for Mac System.Windows.Input参考
- 11. Visual Studio 2008项目参考
- 12. Visual Studio Web参考错误
- 13. Visual Studio C++链接器警告:LNK4006与C运行时(CRT)
- 14. C/C++编译器警告名单的Visual Studio
- 15. C++ _CRT_SECURE_NO_WARNINGS警告
- 16. 警告:未定义的函数参考
- 17. 通过参考变量警告结束()
- 18. 警告MSB8012 - 在Visual Studio 2015上构建Visual Studio 2003项目
- 19. 在Visual Studio中查找错误/警告
- 20. Doxygen警告格式以匹配Visual Studio
- 21. ReSharper的:Visual Studio中:警告使用VAR
- 22. 试图剿资源警告在Visual Studio
- 23. 在Visual Studio 2008中过滤警告
- 24. 的Visual Studio - 禁止的web.config警告
- 25. 在Visual Studio中抑制tlbimp警告
- 26. 在Visual Studio中启用单个警告
- 27. Visual Studio 2013编译器警告
- 28. 版本冲突的警告在Visual Studio
- 29. 关于Visual C++标准库的警告
- 30. 警告C4003:宏 '最大' 没有足够的实际参数 - Visual Studio 2010的C++
几乎同意选择你的接受答案。请简单举例说明“如果您将依赖关系中的类型引用为任何引用,那么来自同一程序集的不同版本的类型被认为是不同的”。谢谢! –