我正在尝试通过Roslyn以编程方式将新项目添加到解决方案中。
var msWorkspace = MSBuildWorkspace.Create();
var solution = msWorkspace.OpenSolutionAsync(Constants.pathToSolution).Result;
var projectId = ProjectId.CreateNewId();
var versionStamp = VersionStamp.Create();
var info = ProjectInfo.Create(
id: projectId,
version: versionStamp,
name: "Redux",
assemblyName: "Redux.dll",
language: LanguageNames.CSharp);
var newSolution = solution.AddProject(info);
msWorkspace.TryApplyChanges(newSolution);
在此之后,抛出异常:
“System.NotSupportedExcpetion:不支持添加项目。”
当我在尝试应用更改之前迭代更改的解决方案时,新项目就会出现在那里。将新文档添加到项目中没有任何问题。
有没有办法将新项目添加到解决方案中并保存更改的解决方案?