10

我们在一些新的类库中使用 Microsoft 的 Unity 框架进行依赖注入。主应用程序正在使用其他一些需要 Unity v2.0.414 的企业库(Common 和 Logging),但我们使用 Unity v2.1.515 实现了我们的库。

为了解决版本差异,我为主应用程序创建了一个 app.Config 并在配置文件中放置了一个 bindingRedirect 条目,效果很好。然而,我们刚刚了解到,到目前为止,该应用程序从未使用过 app.config,而 mgmt 更喜欢这种方式。

那么是否有可能以编程方式实现程序集重定向(即在代码中)?谢谢!

4

1 回答 1

15

您是否尝试过AppDomain.AssemblyResolve事件?

这篇文章也可以帮助您如何使用程序集绑定重定向来忽略修订和内部版本号

public void Load(string assembly)
{
    AppDomain.CurrentDomain.AssemblyResolve += new ResolveEventHandler(Method);
    Assembly assembly = Assembly.LoadFrom(assemblyFile);
    // ...
}
于 2013-06-04T21:50:29.067 回答