0
我有一个问题,一个DLL加载到我的新Appdomain也加载到主AppDomain!卸载后AppDomain和使用的DLL的问题
我有一个类从“MarshalByRefObject”inhertis“Servicebase”。
现在我有不同的孩子类,从这个基类继承。
这些子类应该在他们自己的应用程序域中进行安装。
这个我做这个代码:
AppDomainSetup setup = new AppDomainSetup();
setup.ApplicationBase = Path.GetDirectoryName(dllFile);
setup.ApplicationName = Path.GetFileNameWithoutExtension(dllFile);
setup.LoaderOptimization = LoaderOptimization.MultiDomainHost;
setup.ShadowCopyFiles = "true";
setup.ConfigurationFile = AppDomain.CurrentDomain.SetupInformation.ConfigurationFile;
hostAppDomain = AppDomain.CreateDomain(setup.ApplicationName, AppDomain.CurrentDomain.Evidence, setup);
这个工程...
现在我创造我的实例与此代码:
host = hostAppDomain.CreateInstanceFrom(dllFile, className.Split(',')[0]);
当我现在“的AppDomain检查.CurrentDomain.GetAssemblies()“我的实例程序集未加载到我的主程序集中。
但exceuting此之后:
var inst = (ServiceBase)host.Unwrap();
我目前大会还加载的dll。
有人可以告诉我为什么吗?我能做什么?