Roslyn CTP - 如何将更改写入文件系统
本文关键字:文件系统 CTP Roslyn | 更新日期: 2023-09-27 18:36:12
我创建了一个名为Solution的空Visual Studio Solution.sln并将其加载到工作区的第一行中。 然后,我将一个项目添加到解决方案中,并将工作区更新为现在应包含项目的最新解决方案。 如何写出添加到空解决方案中的新内容的文件?
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Roslyn.Compilers;
using Roslyn.Compilers.CSharp;
using Roslyn.Services;
namespace RoslynMainApp
{
class Program
{
static void Main(string[] args)
{
IWorkspace workspace = Workspace.LoadSolution(@"C:'RoslynSolutions'Solution.sln");
ProjectId projectId;
ISolution solution = Solution.Create(SolutionId.CreateNewId("Solution"));
solution.AddCSharpProject("Project1.dll", "Project1", out projectId);
var success = workspace.ApplyChanges(workspace.CurrentSolution, solution);
if(success)
{
//How do I write out all the stuff I just added to Solution.sln to the directory RoslynSolutions?
}
}
}
}
提前感谢,
鲍勃
调用ApplyChanges
的操作应将更改写入磁盘。 但是,请注意,在 CTP1 中,实际上只实现了一小部分可以应用于解决方案的更改。