我正在尝试在运行时编译由 C# .NET 4.6 在运行时编译的对象引用的代码。
我正在使用 CSharpCodeProvider 在内存中生成 CompilerResult 。生成的程序集在编译的第二个代码片段中引用。是否可以在编译第二部分之前将 AssemblyReference 添加到 CompilerParameters (否则我会收到缺少的程序集编译器错误)。
目前我看到两个选项:
- 在光盘上创建第一个程序集并使用 CompilerParameters.ReferencedAssemblies.Add (但我不喜欢不必要的光盘操作)
- 根本不生成第一块,而是将代码粘贴到第二块中(但我不喜欢多次粘贴相同的代码)
所以我的问题是:是否有一种内存方式可以在另一个运行时生成的程序集中引用运行时生成的程序集?