【发布时间】:2017-03-30 13:24:57
【问题描述】:
我在 .NET Core 控制台应用程序上使用 Roslyn。我试图创建一个程序集并将其编译为内存流。但加载它似乎缺少一个 API (that normally works on the regular .NET Framework)
var compilation = CSharpCompilation.Create("MyCompilation",
syntaxTrees: new[] { pocoTree }, references: new[] { mscorlib, currentAssembly });
var ms = new MemoryStream();
var emitResult = compilation.Emit(ms);
var ourAssembly = Assembly.Load(ms.ToArray()); // Fails to compile here
我收到此错误:
无法从“byte[]”转换为“System.Reflection.AssemblyName”
.NET Core 中从 Steam 加载的替代方法是什么? (除了物理保存程序集并加载它)
【问题讨论】: