【发布时间】:2018-04-06 09:04:04
【问题描述】:
如何从多个类中的代码动态创建 .dll?
创建示例:
var test = CodeDomProvider
.CreateProvider("CSharp")
.CompileAssemblyFromSource(parameters, "public class MyClass { ... }");
CompileAssemblyFromSource 需要一个字符串(类的表示形式)。
我不想将生成的程序集中的每个类都提供为字符串,所以我想在创建时传递它们。
例子:
public class MyClass
{
[DataMember(Order = 1)]
public bool Valid{ get; set; }
[DataMember(Order = 1)]
public string SomeText{ get; set; }
}
有没有类似的
var test = CodeDomProvider
.CreateProvider("CSharp")
.CompileAssemblyFromSource(parameters, MyClass);
【问题讨论】:
-
这个链接应该会有帮助:stackoverflow.com/questions/604501/…
-
这正是我正在使用的方法。答案中的人使用“yourCodeAsString”,但这是罪魁祸首。
-
在包含类定义的 .cs 文件上使用
File.ReadAllText? -
由于某种原因不起作用,我试过了,不会以这种方式创建程序集。
标签: c# class dll .net-assembly