0

目前,我的代码是:1)使用 log4Net 1.2.10 2)使用第三方 dll 来访问它的相关第三方软件 api,这个 dll 也使用 log4Net 1.2.10

我的代码必须保持对这个第三方 api 的访问权限,除了使用 dll 之外,没有其他可用的方法来获得访问权限。如上所述,该 dll 是针对 log4Net 1.2.10 编译的。

我想升级我的所有系统以使用 log4Net 1.2.11,但是这样做会导致第三方 dll 在我调用它时出错,因为它找不到 log4Net 1.2.10。

有没有办法让我的软件使用 log4Net 1.2.11 编译,而我的软件仅附带 log4Net 1.2.11,但让第三方 dll 认为它真的是 log4Net 1.2.10?

4

2 回答 2

2

你会遇到问题,log4net 团队在 10 和 11 之间更改了他们的强名称签名密钥,请参阅以下说明:

http://haacked.com/archive/2012/02/16/chang-a-strong-name-is-a-major-break-change.aspx

基本上,您不能重定向到具有不同签名密钥的程序集。

于 2013-05-31T00:03:41.867 回答
0

总之,是的。查看 web/app.config 中的程序集绑定重定向标记。

参考: http: //msdn.microsoft.com/en-us/library/7wd6ex19 (v=vs.71).aspx

于 2013-05-31T00:00:02.257 回答