代码之家  ›  专栏  ›  技术社区  ›  Ryan Spears

将Visual Studio 2008中所有项目的目标框架更改为3.5[副本]

  •  5
  • Ryan Spears  · 技术社区  · 14 年前

    可能重复:
    Change the Target Framework for all my projects in a Visual Studio Solution

    我刚从2005年到2008年转换了一个Visual Studio项目,以利用.NET 3.5框架功能。我的解决方案包含大约80个项目,我希望将所有项目的目标框架都设置为.NET Framework 3.5。有没有一种方法可以做到这一点,而无需手动进入并逐个在属性->应用程序->目标框架中更改它们?

    2 回复  |  直到 14 年前
        1
  •  4
  •   ChrisF    14 年前

    您需要编辑所有.csproj文件并更改行:

    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
    

    您可以编写一个程序来扫描项目文件夹中的所有.csproj文件,将它们作为文本(或者XML)读取,更新该行,然后再将它们写出来。

    不过,如果与2008年的项目相比,它们还没有出现问题。所以先转换它们。在您这样做的同时,手动更新目标框架版本可能也同样快速(如果不是更快的话)。

    既然这样说了,为什么不让它单独存在,直到您无论如何都要对项目进行代码更改。因为你的代码现在可以工作了,你想要更新的唯一原因就是利用新的特性,你无论如何都要编辑这个项目。

        2
  •  2
  •   Jeremy McGee    14 年前

    理论上 你可以在 .csproj 更改框架版本之前和之后的文件。 CSPROJ 是一个XML文件,所以您可以编写一个程序来解析和更改它。

    在实践中,我不会这样做,因为这可能会遗漏一些微妙的地方。例如:安装项目的工作方式相同吗?Web部署项目?

    另外,假设您需要几秒钟的时间来手动完成每一项。完成整个解决方案大约需要两三分钟。这可能比写代码要快…!