Buildalyzer以编程方式修改.csproj中的TargetFrameworkVersion

时间:2019-01-28 07:16:25

标签: .net-core roslyn

我需要以编程方式更新.csproj文件中的TargetFrameworkVersion。例如。我想将TargetFrameworkVersion从v2.0更改为4.5 / 4.6 / 4.7等。我使用 Buildalyzer 来实现相同目的。这是我的代码

AnalyzerManager analyzerManager = new AnalyzerManager(solutionPath);//solutionPath is a solution url which has projects with <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
var projects = analyzerManager.Projects;
foreach (var pjt in projects.Keys)
{
    ProjectAnalyzer projectAnalyzer = analyzerManager.GetProject(projects[pjt].ProjectInSolution.AbsolutePath);
    projectAnalyzer.SetGlobalProperty("TargetFrameworkVersion", "v4.5");
}

但是projectAnalyzer.SetGlobalProperty("TargetFrameworkVersion", "v4.5");不会使用v4.5作为目标框架来更新csproj文件。我想念什么吗?

或者这是SetGlobalProperty,用于将解决方案/项目设置为在指定框架上构建,并且不会更新.csproj文件吗?

0 个答案:

没有答案