nhibernateでlog4netの新しいバージョンを使用したいとします。 log4netのバージョンは自分自身でsvnソースからコンパイルされているので、publicKeyTokenが変更されたことを意味する新しいキーで署名しなければなりませんでした。バージョンを1.2.11.0に設定しました。問題は、nhibernateが古い1.2.10.0バージョンのlog4netを参照していることです。サードパーティのlibが旧バージョンに依存している場合、新しいpublicKeyTokenを持つ別のバージョンのアセンブリを使用してください。
私はApp.configファイルにこの部分でリダイレクトを結合アセンブリを構成してみました:
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="log4net"
publicKeyToken="1b44e1d426115821"/>
<bindingRedirect oldVersion="1.2.10.0"
newVersion="1.2.11.0"/>
</dependentAssembly>
</assemblyBinding>
どんな効果を持っていないようですが。 publicKeyTokenが一致しないためです。 :
これを行うか、私を行うには、他の方法があります。 log4net 1.2.10を使用して、私が興味を持っているsvnコードベースからの追加と修正を含むlog4net拡張プロジェクトを作成しますか? または b。私自身のlog4netビルドを使って独自のバージョンのnhibernateを構築する OR c。 log4netチームがlog4netの新しいバージョンを正しいpublicKeyTokenでリリースするようにする
私はcを好むだろう。正直なところ、私は年齢の新しいビルドバージョンをリリースしていない理由を理解できませんが、svnソースには多くの修正と新機能があります。
はい、マイナーリビジョンに新しいキーを使用している作者は、非常にイライラする可能性があります。 – ladenedge