在有些场景下需要动态加载一些C#代码执行,这种情况往往是让C#当作一些逻辑脚本来执行.这样可以随时修改代码即可以反映到应用程序中.为了解决这一功能以下提供一个非常简单的组件script4net来完成这一功能.通过script4net可以动态加载C#,VB.NET文件或代码文本.

应用1

            CS4Script.Script script = new Script();
            script.LoadCSCode(@"
  using System;
  class Program
    {
        static void Test(string name)
        {
            Console.WriteLine(name);
        }
    }
");
            script.Invoke("Program:Test", "henry");

应用2

  script.LoadCSCode(@"
  using System;
  using CS4Script.Console;
  public class Command:Program.ICommand
    {
        public  void Execute(string cmd)
        {
            System.Console.WriteLine(cmd);
        }
    }
");
            script.Invoke("Command:Execute", "henry");

            ICommand cmd = (ICommand)script.CreateInstance("Command");
            cmd.Execute("henry");
            System.Console.Read();
        

        public interface ICommand
        {
            void Execute(string cmd);
        }

代码

        详细代码就不说了,有需求的朋友自生下载

       /files/file/20140905/20140905111435_1808.rar

关注微信公众号



相关文章