Rumah >pembangunan bahagian belakang >C++ >Bagaimanakah Saya Boleh Melaksanakan Kod C# Secara Dinamik daripada Fail dalam Aplikasi WPF?
Pelaksanaan dinamik fail kod C#
Soalan:
Aplikasi WPF C# anda disertakan dengan butang yang perlu melaksanakan kod yang disimpan dalam fail teks berasingan dalam direktori masa jalan aplikasi.
Penyelesaian:
Untuk melaksanakan kod secara dinamik dalam fail teks, ikut langkah berikut:
Berikut ialah contoh kod tentang cara melaksanakan kaedah kelas yang disusun secara dinamik:
<code class="language-csharp">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("编译失败!"); object o = results.CompiledAssembly.CreateInstance("Foo.Bar"); MethodInfo mi = o.GetType().GetMethod("SayHello"); mi.Invoke(o, null); } } }</code>
Mengikut langkah ini, anda boleh melaksanakan kod C# secara dinamik daripada fail kod dalam aplikasi WPF.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Kod C# Secara Dinamik daripada Fail dalam Aplikasi WPF?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!