如何执行codeDom生成的代码?

时间:2010-07-22 04:26:41

标签: c#-3.0 code-generation codedom

我刚使用codeDom生成.cs文件。有人可以解释我该如何执行它?

2 个答案:

答案 0 :(得分:1)

下面的代码允许您使用codedom编译代码,然后您可以向用户显示代码是否正确编译。它甚至还创建了一个DLL。

由于 亚历

// Store provider from the method into a object, Default is CSharpCodeProvider**
CodeDomProvider provider = this.GetCurrentProvider();

// Configure a CompilerParameters that links System.dll**
String[] referenceAssemblies = { "System.dll", "System.Data.Linq.dll", "System.Web.dll","System.XML.dll","System.ComponentModel.DataAnnotations.dll", "System.Data.dll", _mvcLocation };

CompilerParameters cp = new CompilerParameters(referenceAssemblies, this.fileLocation + this.fileName + ".dll", false);

// Generate an executable rather than a DLL file.**

cp.GenerateExecutable = true;

// Invoke compilation.**
CompilerResults _results = provider.CompileAssemblyFromFile(cp, this.fileLocation + this.fileName + "." + this.extention);

答案 1 :(得分:0)

这不是那么简单。 See here用于底漆。 CodeDom基本上支持code generation and dynamic compilation等场景。因此,使用CodeDom创建的.cs文件不是通常意义上的可执行文件。