4

我正在使用“入门:语义分析”演练检查 Roslyn API。其中有一部分试图添加对编译的引用:

var compilation = Compilation.Create("HelloWorld")
                         .AddReferences(new AssemblyNameReference("mscorlib"))
                         .AddSyntaxTrees(tree);

但似乎 API 已更改,并且“AssemblyNameReference”不再存在。或者文档可能是错误的,因为“AddReferences”的命名表明它需要某种 IEnumerable。

顺便说一句,我正在寻找正确的实现,所以我可以测试它!

4

1 回答 1

5

2012 年 9 月版的语义分析 (CSharp) 演练包含以下代码:

var compilation = Compilation.Create("HelloWorld")
                         .AddReferences(MetadataReference.CreateAssemblyReference("mscorlib"))
                         .AddSyntaxTrees(tree);

您可能正在查看早期 CTP 的演练版本。尝试在 MetadataReference 上使用静态工厂方法。

于 2012-11-22T05:39:05.920 回答