C#动态编译并执行字符串样例

本文实例为大家分享了Android九宫格图片展示的具体代码,供大家参考,具体内容如下

using System;
using Microsoft.CSharp;
using System.CodeDom.Compiler;

class Program
{
  public static void Main()
  {
    // The C# code to execute
    string code = "using System; " +
           "using System.IO; " +
           "public class MyClass{ " +
           "  public static void PrintConsole(string message){ " +
           "    Console.WriteLine(message); " +
           "  } " +
           "} ";

    // Compiler and CompilerParameters
    CSharpCodeProvider codeProvider = new CSharpCodeProvider();
    CompilerParameters compParameters = new CompilerParameters();

    // Compile the code
    CompilerResults res = codeProvider.CompileAssemblyFromSource(compParameters, code);

    // Create a new instance of the class 'MyClass'    // 有命名空间的,需要命名空间.类名
    object myClass = res.CompiledAssembly.CreateInstance("MyClass");

    // Call the method 'PrintConsole' with the parameter 'Hello World'
    // "Hello World" will be written in console
    myClass.GetType().GetMethod("PrintConsole").Invoke(myClass, new object[] {"Hello World" });

    Console.Read();
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • C#执行js动态编译的方法

    本文实例讲述了C#执行js动态编译的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: using System;  using System.CodeDom.Compiler;  using System.Collections.Generic;  using System.Linq;  using System.Reflection;  using System.Text;  using System.Threading.Tasks;    namespace webpro

  • 使用 C# 动态编译代码和执行的代码

    复制代码 代码如下: /* * 使用 C# 动态编译代码和执行 * 作者: yaob */ static void Main(string[] args) { // 编译器 CodeDomProvider cdp = CodeDomProvider.CreateProvider("C#"); // 编译器的参数 CompilerParameters cp = new CompilerParameters(); cp.ReferencedAssemblies.Add("Syst

  • C# 动态编译、动态执行、动态调试

    在此基础上我做了一些封装,为使调用更加简单,并增加了对动态代码调试的支持,相同代码只编译一次的支持,代码改动自动重新编译,代码引用文件的自动加载和手工加载等功能. 如上图,我封装的类CSharpProvider很简单,下面说明一下一些公共成员的用法. 公共属性 AssemblyFileName:这个属性指定动态编译后生成的配件名称. CompilerParameters:这个属性指定编译的参数 References:这个属性指定被编译代码中的引用.调用者只要调用References.Add("x

  • c#动态编译执行对象方法示例 运用映射机制创建对象

    C#是一种编译型的语言,程序执行,首先要经过编译器编译,如何让C#像一种脚本一样,在要执行的时候,进行编译,这里,我们可以用Microsoft.CSharp空间下的CSharpCodeProvider提供类,来达到动态编译的效果.在这里,我新建一个控制台程序,在Program.cs类里引用using System.CodeDom.Compiler;using System.Reflection;using Microsoft.CSharp;三大命名空间 复制代码 代码如下: #region us

  • C#动态编译并执行字符串样例

    本文实例为大家分享了Android九宫格图片展示的具体代码,供大家参考,具体内容如下 using System; using Microsoft.CSharp; using System.CodeDom.Compiler; class Program { public static void Main() { // The C# code to execute string code = "using System; " + "using System.IO; "

  • .NET 动态编译

    这在很大程度上给我们提供了另外一种扩展的方式(当然这并不能算是严格意义上的扩展,但至少为我们提供了一种思路). 动态代码执行可以应用在诸如模板生成,外加逻辑扩展等一些场合.一个简单的例子,为了网站那的响应速度,HTML静态页面往往是我们最好的选择,但基于数据驱动的网站往往又很难用静态页面实现,那么将动态页面生成html的工作或许就是一个很好的应用场合.另外,对于一些模板的套用,我们同样可以用它来做.另外这本身也是插件编写的方式. 最基本的动态编译 .Net为我们提供了很强大的支持来实现这一切我们

  • 详细介绍.NET中的动态编译技术

    代码的动态编译并执行是一个.NET平台提供给我们的很强大的工具用以灵活扩展(当然是面对内部开发人员)复杂而无法估算的逻辑,并通过一些额外的代码来扩展我们已有 的应用程序.这在很大程度上给我们提供了另外一种扩展的方式(当然这并不能算是严格意义上的扩展,但至少为我们提供了一种思路). 动态代码执行可以应用在诸如模板生成,外加逻辑扩展等一些场合.一个简单的例子,为了网站那的响应速度,HTML静态页面往往是我们最好的选择,但基于数据驱动的网站往往又很难用静态页面实现,那么将动态页面生成html的工作或许

  • C#动态执行字符串(动态创建代码)的实例代码

    复制代码 代码如下: using System;using System.Data;using System.Configuration;using System.Text;using System.CodeDom.Compiler;using Microsoft.CSharp;using System.Reflection; namespace EvalGuy{    /// <summary>    /// 本类用来将字符串转为可执行文本并执行    /// 从别处复制,勿随意更改!   

  • Java动态编译执行代码示例

    在某些情况下,我们需要动态生成java代码,通过动态编译,然后执行代码.JAVAAPI提供了相应的工具(JavaCompiler)来实现动态编译.下面我们通过一个简单的例子介绍,如何通过JavaCompiler实现java代码动态编译. 一.获取JavaCompiler JavaCompiler compiler = ToolProvider.getSystemJavaCompiler(); 获取JDK提供的java编译器,如果没有提供编译器,则返回null: 二.编译 //获取java文件管理

  • VBS教程:VBScript 页面的简单样例

    VBScript 页面的简单样例一个简单页面使用 Microsoft(R) Internet Explorer 可以查看用以下 HTML 代码制作的页面.如果单击页面上的按钮,可看到 VBScript 的运行结果. <HTML><HEAD><TITLE>一个简单首页</TITLE><SCRIPT LANGUAGE="VBScript"><!--Sub Button1_&#111nClick MsgBox &quo

随机推荐