加载和卸载程序集AppDomain.Load(bytes)

时间:2013-10-18 13:35:49

标签: c# .net .net-assembly

我想做这样的事情:

byte[] bytes = item.CompiledRule;
AppDomain domain = AppDomain.CreateDomain("TestDomain");
Assembly a = domain.Load(bytes);
//Something do with Assembly 
AppDomain.Unload(domain);

我只有汇编字节。当我不使用AppDomain时,它的工作非常完美,但是当我这样做的时候就会崩溃:

System.IO.FileNotFoundException: Could not load file or assembly

1 个答案:

答案 0 :(得分:0)

从字节数组加载程序集时,它的依赖项不会自动解析。解决该问题的一种可能方法是订阅AppDomain.AssemblyResolve事件以加载您的依赖项。请注意,解析代码必须在该AppDomain内运行。