从编译Roslyn SyntaxTree的许多示例中,我看到了以下代码:
[... create tree and compilation ...]
var assembly = AppDomain.CurrentDomain.DefineDynamicAssembly(new AssemblyName("foo"), AssemblyBuilderAccess.RunAndCollect);
var module = assembly.DefineDynamicModule("foo");
var result = compilation.Emit(module);
Run Code Online (Sandbox Code Playgroud)
但是当我尝试在当前使用Visual Studio 2015 RC发布的Roslyn中执行此操作时,我看到没有Emit()哪个需要一个模块.我需要写入流并将其加载到常规AppDomain锁定中Assembly.
然后我从Tomas Matousek看到这个答案:https://stackoverflow.com/a/22977158
他说这已被删除,因为它"有问题".
我很难在互联网上找到关于此的任何其他信息.有谁知道:
正如 svick 和 JoshVarty 在评论中所说,目前这是不可能的。我还为此创建了一个问题(https://github.com/dotnet/roslyn/issues/2621),该问题最终可能会或可能不会从 Microsoft 团队获得更多信息。
| 归档时间: |
|
| 查看次数: |
335 次 |
| 最近记录: |