【问题标题】:Why is AssemblyResolve called when Assembly is in CurrentDomain?当 Assembly 在 CurrentDomain 中时,为什么会调用 AssemblyResolve?
【发布时间】:2012-11-09 09:29:07
【问题描述】:

我遇到这样一种情况,即为已使用 Assembly.Load(myAssemblyMemStream.ToArray()) 加载到当前域中的程序集调用 AppDomain.CurrentDomain.AssemblyResolve

这是为什么呢?

我需要执行以下操作才能使其正常工作。这与 .NET 自动执行的操作有何不同?

Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args)
{
    return AppDomain.CurrentDomain
                    .GetAssemblies()
                    .First(x => x.FullName == args.Name);
}

【问题讨论】:

    标签: c# .net appdomain .net-assembly


    【解决方案1】:

    加载上下文http://blogs.msdn.com/b/suzcook/archive/2003/05/29/57143.aspx。加载 byte[] 不会导致其他加载上下文中的程序集能够看到它。这是一项安全功能。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-03-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-01-09
      • 1970-01-01
      • 2022-10-18
      • 2019-07-25
      相关资源
      最近更新 更多