运行到这个问题。我在 Visual Studio 2010 中打开一个项目。转换向导出现,我按完成。它会打开项目,但无法编译,并在所有引用都存在时抱怨缺少程序集引用。我怀疑这是因为转换。.csproj 文件从:
<Project DefaultTargets="Build"
xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
至
<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build"
xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
所以目标框架发生了变化。如何禁用此功能?我没有从我这边做任何事情。刚打开项目,编译失败。Visual Studio 2010 中是否有一些智能来禁用或不这样做,所以我可以进行一些开发和编译。它引用了大量其他项目,我没有转换它们的选项。
该项目最初是在 2008 年开发的,我现在在 VS 2010 中打开。
更新 看起来问题是从这个旧应用程序引用的一些程序集已升级到目标框架 3.5。但是这个应用程序仍然针对 2.0。所以我升级了它的目标框架。
现在还有另一个问题。此应用程序和引用的程序集都引用了程序集 A。但应用程序引用的是 A 5.0,而引用的程序集引用的是版本 A 6.0。所以 Visual Studio 对此有所抱怨。为什么这些版本必须匹配?应用程序及其引用的程序集不能使用不同版本的通用程序集吗?
Visual Studio 中的错误报告是阴暗和可悲的。