zoukankan      html  css  js  c++  java
  • C#中动态执行C#脚本

    using Microsoft.CSharp;

    using System.CodeDom.Compiler;

    using System.Reflection;

     

    private void button1_Click(object sender, EventArgs e)

    {

        ICodeCompiler vCodeCompiler = new CSharpCodeProvider().CreateCompiler();

        CompilerParameters vCompilerParameters = new CompilerParameters();

        vCompilerParameters.GenerateExecutable = false;

        vCompilerParameters.GenerateInMemory = true;

        string vSource =

            "public class Temp"n" +

            "{"n" +

              public double Test(double A, double B)"n" +

              {"n" +

                  return A / B;"n" +

              }"n" +

            "}"n";

        CompilerResults vCompilerResults =

            vCodeCompiler.CompileAssemblyFromSource(vCompilerParameters, vSource);

        Assembly vAssembly = vCompilerResults.CompiledAssembly;

        object vTemp = vAssembly.CreateInstance("Temp");

        MethodInfo vTest = vTemp.GetType().GetMethod("Test");

        for (int i = 1; i < 100; i++)

        {

            object[] vParams = { 1, i };

            object vDouble = vTest.Invoke(vTemp, vParams);

            textBox1.AppendText(vDouble.ToString() + ""r"n");

        }

    }

     

  • 相关阅读:
    mybatis 入门基础
    spring学习总结
    综合练习:词频统计
    组合数据类型综合练习
    Python基础综合练习
    熟悉常用的Linux操作
    1.大数据概述
    C程序语法(无左递归)
    文法规则
    实验一词法分析报告
  • 原文地址:https://www.cnblogs.com/cuihongyu3503319/p/1262068.html
Copyright © 2011-2022 走看看