[C#] قم بتنفيذ c # كود في وقت التشغيل من ملف التعليمات البرمجية


Answers

نموذج التعليمات البرمجية لتنفيذ تجميعها على طريقة فئة الطيران:

using System;
using System.Collections.Generic;
using System.Text;
using System.Diagnostics;
using System.IO;
using System.Reflection;
using System.Net;
using Microsoft.CSharp;
using System.CodeDom.Compiler;

namespace ConsoleApplication2
{
    class Program
    {
        static void Main(string[] args)
        {
            string source =
            @"
namespace Foo
{
    public class Bar
    {
        public void SayHello()
        {
            System.Console.WriteLine(""Hello World"");
        }
    }
}
            ";

             Dictionary<string, string> providerOptions = new Dictionary<string, string>
                {
                    {"CompilerVersion", "v3.5"}
                };
            CSharpCodeProvider provider = new CSharpCodeProvider(providerOptions);

            CompilerParameters compilerParams = new CompilerParameters
                {GenerateInMemory = true,
                 GenerateExecutable = false};

            CompilerResults results = provider.CompileAssemblyFromSource(compilerParams, source);

            if (results.Errors.Count != 0)
                throw new Exception("Mission failed!");

            object o = results.CompiledAssembly.CreateInstance("Foo.Bar");
            MethodInfo mi = o.GetType().GetMethod("SayHello");
            mi.Invoke(o, null);
        }
    }
}
Question

لدي وف C # التطبيق الذي يحتوي على زر.

يتم كتابة التعليمات البرمجية لنقر زر في ملف نصي منفصل التي سيتم وضعها في دليل وقت التشغيل التطبيقات.

أريد تنفيذ هذا الرمز وضعت في ملف نصي على نقرة زر.

أي فكرة عن كيفية القيام بذلك؟




يبدو أن شخصا ما أنشأ مكتبة لهذا يسمى C # إيفال