【发布时间】:2019-11-15 03:23:07
【问题描述】:
我正在寻找如何使用 Roslyn 编译项目的示例。下面的代码是我在https://github.com/dotnet/roslyn/wiki/FAQ 中找到的一个例子……这个例子不包括嵌入式文件。这可能吗?
public class MyTask : Task {
public override bool Execute() {
var projectFileName = this.BuildEngine.ProjectFileOfTaskNode;
var project = ProjectCollection.GlobalProjectCollection.
GetLoadedProjects(projectFileName).Single();
var compilation = CSharpCompilation.Create(
project.GetPropertyValue("AssemblyName"),
syntaxTrees: project.GetItems("Compile").Select(
c => SyntaxFactory.ParseCompilationUnit(
c.EvaluatedInclude).SyntaxTree),
references: project.GetItems("Reference")
.Select(
r => new MetadataFileReference
(r.EvaluatedInclude)));
// Now work with compilation ...
}
}
【问题讨论】:
标签: c# roslyn embedded-resource