当前位置:  开发笔记 > 编程语言 > 正文

有没有办法在运行时将类文件加载到程序集?

如何解决《有没有办法在运行时将类文件加载到程序集?》经验,为你挑选了1个好方法。

我正在尝试做一些在运行时从用户那里获取cs文件的东西,使其对程序集有意义获取其属性,方法等.

有没有办法通过C#中的反射来做到这一点?



1> edosoft..:

要动态编译文件,你需要在这些行上做一些事情(其中sourceCode是一个包含要编译的代码的字符串):

CodeDomProvider codeProvider = new CSharpCodeProvider();
ICodeCompiler compiler = codeProvider.CreateCompiler();

// add compiler parameters
CompilerParameters compilerParams = new CompilerParameters();
compilerParams.CompilerOptions = "/target:library /optimize";
compilerParams.GenerateExecutable = false;
compilerParams.GenerateInMemory = true;         
compilerParams.IncludeDebugInformation = false;
compilerParams.ReferencedAssemblies.Add("mscorlib.dll");
compilerParams.ReferencedAssemblies.Add("System.dll");

// compile the code
CompilerResults results = compiler.CompileAssemblyFromSource(compilerParams, sourceCode);

推荐阅读
跟我搞对象吧
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有