繁体   English   中英

以编程方式升级Visual Studio解决方案和项目文件

[英]Upgrade Visual Studio solution and project files programmatically

我有很多Visual Studio项目,这些项目是使用安装程序交付给客户的。 安装后,所有项目和解决方案文件应为最新安装的Visual Studio版本。 有什么办法可以快速转换很多项目?

我试过以下:

1)解析文件并替换不同的属性,例如ToolsVersion等。它快速但不可靠,应该针对每个上市的新Visual Studio进行更改(每年从现在开始AFAIK)

2)使用devenv升级功能,可靠但非常慢:

string[] files = Directory.GetFiles(@"c:\MyTmp", "*.sln", SearchOption.AllDirectories);
foreach (string file in files)
{
    Process process = new Process();
    process.StartInfo.FileName = pathToTheLatestVS;
    process.StartInfo.Arguments = "/Upgrade \"" + file + "\"";
    process.Start();
    process.WaitForExit();
}

3)试图创建一个VS的隐藏实例,并按此处所述从那里操纵解决方案,但是没有运气。

那么有可能以快速,可靠的方式将许多项目/解决方案文件升级到特定的Visual Studio版本吗?

让我向您介绍与您提出的两种观点不同的观点。 升级缓慢的事实是,对您尝试升级的项目/解决方案执行了各种检查。 生成“升级报告”以提供有关这些检查的反馈。 这是不容忽视的信息,因为它提供了上述问题的补救措施。

您声明已通过安装程序部署项目/解决方案。 假设您拥有最新的开发团队/工具,则可以在安装程序设计/开发过程中执行升级。 为什么不自己执行升级,而在安装程序中包含项目文件。 在安装过程中,您将安装与目标平台匹配的项目/解决方案文件的版本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM