zoukankan      html  css  js  c++  java
  • c#动态编译并动态生成dll

            /// <summary>
            /// 动态编译并执行代码
            /// </summary>
            /// <param name="code">代码</param>
            /// <param name="newPath">输出dll的路径</param>
            /// <returns>返回输出内容</returns>
            private CompilerResults debugRun(string[] code, string newPath)
            {
                CSharpCodeProvider complier = new CSharpCodeProvider();
                //设置编译参数
                CompilerParameters paras = new CompilerParameters();
                //引入第三方dll
                paras.ReferencedAssemblies.Add(@"System.dll");
                paras.ReferencedAssemblies.Add(@"System.configuration.dll");
                paras.ReferencedAssemblies.Add(@"System.Data.dll");
                paras.ReferencedAssemblies.Add(@"System.Management.dll");
                paras.ReferencedAssemblies.Add(@"System.Web.dll");
                paras.ReferencedAssemblies.Add(@"System.Xml.dll");
                paras.ReferencedAssemblies.Add(@"F:AuthorizationServiceLibNewtonsoft.JsonNet20Newtonsoft.Json.dll");
                //引入自定义dll
                //paras.ReferencedAssemblies.Add(@"D:自定义方法自定义方法inLogHelper.dll");
                //是否内存中生成输出
                paras.GenerateInMemory = false;
                //是否生成可执行文件
                paras.GenerateExecutable = false;
                paras.OutputAssembly = newPath;
    
                //编译代码
                CompilerResults result = complier.CompileAssemblyFromSource(paras, code);
    
                return result;
            }     
  • 相关阅读:
    用到了yii2 hasMany() 方法,一对多关联
    jquery操作select标签change事件
    Yii2如何批量添加数据
    [bzoj1497][NOI2006]最大获利
    [bzoj]2962序列操作
    洛谷 P1350 车的放置
    洛谷 P1142 轰炸
    初级数论练习题
    洛谷 P3795 钟氏映射
    洛谷 2953 [USACO09OPEN]牛的数字游戏Cow Digit Game
  • 原文地址:https://www.cnblogs.com/feigao/p/6197167.html
Copyright © 2011-2022 走看看