如何在runTime中创建包含类的dll
本文关键字:包含类 dll 创建 runTime | 更新日期: 2023-09-27 18:25:57
我有一些类(简单类),我想在运行时编译这个类,并(在运行时)创建一些包含这个类的dll。
有什么办法吗?
谢谢。
是的,使用CSharpCodeProvider。
你可以阅读我在深度C#中使用的"Snippy"的示例代码——它正是这样做的。
您可以要求CSharpCodeProvider
写入文件或在内存中生成程序集。
样本代码:
using System;
using System.CodeDom.Compiler;
using Microsoft.CSharp;
class Test
{
static void Main()
{
var provider = new CSharpCodeProvider();
var options = new CompilerParameters {
OutputAssembly = "Foo.dll"
};
string source = "public class Foo {}";
provider.CompileAssemblyFromSource(options, new[] { source });
}
}
您可以在运行时使用CSharpCodeProvider
编译代码。请参阅此MSDN博客。
PS。通过谷歌快速搜索找到;)