现在这已经困扰了我多年,现在是时候找出它是否可能了。我目前有一个可以编译一个类的CodeDom,但我创建了一个程序,它有多个类,我想用CodeDom编译。我试过看这里: CodeDom - Linking multiple classes within a single Assembly ^没有帮助...... 和这里: http://msdn.microsoft.com/en-us/library/system.codedom.compiler.compilerparameters.aspx ^没什么帮助...
那么,这可能吗?如果是这样,我具体怎么做?如何将我的类链接在一起并编译?
答案 0 :(得分:1)
在CodeDOM树的顶部,有CodeCompileUnit
,大致相当于一个C#源代码文件。当您使用CompileAssemblyFromDom()
进行编译时,它实际上需要CodeCompileUnit
的集合。这意味着您可以一次轻松编译多个类:只需为每个类创建一个单独的CodeCompileUnit
。
但这不是唯一的选择,CodeCompileUnit
(就像C#文件一样)可以包含多个类声明(间接通过CodeNamespace
),所以你可以改用它。