.Net Core动态编译代码引发错误,不能包含引用的程序集

时间:2018-09-12 06:47:05

标签: c# .net .net-core

您好,我正在尝试使用Roslyn在.net core 2中编译动态代码,但是有问题。

问题复制到 https://github.com/dgamma3/RoslynCompile

代码是 https://github.com/dgamma3/RoslynCompile/blob/master/Example/Program.cs

错误

  

名称“控制台”在当前上下文中不存在。

我尝试做

MetadataReference[] references = new MetadataReference[]
{
     MetadataReference.CreateFromFile(typeof(object).GetTypeInfo().Assembly.Location),
     MetadataReference.CreateFromFile(typeof(Console).GetTypeInfo().Assembly.Location),
};

但随后出现以下错误

  

CS0012:类型'Object'是在不是   参考。您必须添加对程序集'System.Runtime的引用,   Versio n = 4.2.1.0,文化=中性,PublicKeyToken = b03f5f7f11d50a3a'。           CS0012:类型'Decimal'在未引用的程序集中定义。您必须添加对程序集'System.Runtime的引用,   Versi on = 4.2.1.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'。

`

0 个答案:

没有答案