使用CodeDomProvider在调试模式下编译源代码

Dan*_*Tao 1 .net c# compiler-construction debugging codedom

我有一些我想用Microsoft.CSharp.CSharpCodeProvider类编译的源代码,我想要包含特定于调试版本的东西(例如,标有该[Condtional("DEBUG")]属性的方法).

我尝试将CompilerParameters.CompilerOptions属性设置为"/ debug",但是当我运行已编译的代码时,似乎没有包含调试内容; 所以我怀疑这不是完成我想要的正确方法.

我怎样才能做到这一点?

Jon*_*eet 7

您应该能够设置CompilerOptions/d:DEBUG这将定义DEBUG预处理符号.这是条件编译所基于的,而不是/debug标志 - 后者控制是否发出调试信息.