C# CodeDom生成不安全代码或替代编译选项

C# CodeDom生成不安全代码或替代编译选项,c#,codedom,unsafe,system-codedom-compiler,C#,Codedom,Unsafe,System Codedom Compiler,我刚刚用CodeDom开发了一个相当大的项目。好了,差不多完成了-除了一个小问题-我项目中的一个类需要/safe标记。我读到CodeDom不支持使用不安全指针*生成*方法或类型,但是,我很好奇是否有某种方法可以从已经包含不安全标记的文件编译类。我知道我可以手动创建一个.csproj文件,并从这里启用不安全的代码,但同样,我不认为在从文件编译时可以使用这个.csproj文件 最后,如果上述方法都不可行,是否有某种方法可以使用C#.dll生成源代码?可能与VS默认使用的相同 谢谢你的帮助 Evan您

我刚刚用CodeDom开发了一个相当大的项目。好了,差不多完成了-除了一个小问题-我项目中的一个类需要
/safe
标记。我读到CodeDom不支持使用不安全指针*生成*方法或类型,但是,我很好奇是否有某种方法可以从已经包含不安全标记的文件编译类。我知道我可以手动创建一个.csproj文件,并从这里启用不安全的代码,但同样,我不认为在从文件编译时可以使用这个.csproj文件

最后,如果上述方法都不可行,是否有某种方法可以使用C#.dll生成源代码?可能与VS默认使用的相同

谢谢你的帮助


Evan

您可以通过使用类在codedom中生成带有不安全指针的方法

您不能做的是以可移植的方式生成带有不安全指针的方法,因为CodeDom只有这些语言能够实现的功能的子集。 您在codedom中找到的特性更可能出现在许多语言中

至于你的问题,;您应该能够从文件编译类。创建与此类似的CompilerParameters对象

CompilerParameters cp = new CompilerParameters();
cp.CompilerOptions = "/unsafe";

然后在您选择的提供者上调用

如果您正在努力使用CodeDom,您可能希望尝试一下。