我可以用CodeDom将多个类编译成一个程序吗?

时间:2013-01-24 13:45:09

标签: c# codedom

现在这已经困扰了我多年,现在是时候找出它是否可能了。我目前有一个可以编译一个类的CodeDom,但我创建了一个程序,它有多个类,我想用CodeDom编译。我试过看这里: CodeDom - Linking multiple classes within a single Assembly ^没有帮助...... 和这里: http://msdn.microsoft.com/en-us/library/system.codedom.compiler.compilerparameters.aspx ^没什么帮助...

那么,这可能吗?如果是这样,我具体怎么做?如何将我的类链接在一起并编译?

1 个答案:

答案 0 :(得分:1)

在CodeDOM树的顶部,有CodeCompileUnit,大致相当于一个C#源代码文件。当您使用CompileAssemblyFromDom()进行编译时,它实际上需要CodeCompileUnit的集合。这意味着您可以一次轻松编译多个类:只需为每个类创建一个单独的CodeCompileUnit

但这不是唯一的选择,CodeCompileUnit(就像C#文件一样)可以包含多个类声明(间接通过CodeNamespace),所以你可以改用它。