using System;
using
namespace
/// <summary> ///.NET remoting技术与应用程序域小用 /// </summary>
System.Runtime.Remoting ; MyAppDomainNamespace
class CodeDriverInAppDomain
{
public string CompileAndRun(string code, out bool hasError)
{
string results;
AppDomain codeDomain = AppDomain.CreateDomain("MyWpfApplication.CodeDriver");
//加载程序集
//MyWpfApplication.CodeDriver必须序列化
MyWpfApplication.CodeDriver codeDriver = (MyWpfApplication.CodeDriver)(codeDomain.CreateInstanceFromAndUnwrap("MyWpfApplication.exe", "MyWpfApplication.CodeDriver"));
//执行加载的类中的方法
results=codeDriver.CompileAndRun(code,out hasError);
//卸载程序集
AppDomain.Unload(codeDomain);
return results;
}
}
}