私はこれら2つの問題を調べるのに2時間を費やしましたが、何も動作していないようです。log4net 1.2.11の競合に関するもう1つの問題
NuGet経由でlog4net 1.2.11を使用するソリューションがあります。それは、Windows 7を実行している私の32ビット開発ワークステーションで正常に動作します。私の64ビットWindows 2008 R2テストシステムでは動作しません。私が手にエラーがある:
未処理の例外:System.IO.FileLoadException:「文化はニュートラル、PublicKeyToken = = 669e0ddf0bb1aa2a、log4netの、= 1.2.11.0バージョン」またはその依存関係の1つのファイルまたはアセンブリをロードできませんでした。見つかったアセンブリのマニフェスト定義がアセンブリ参照と一致しません。
私のテストシステムのアプリケーションディレクトリを調べています。 log4net.dll
ファイルにバージョン1.2.11があります。
GACのバージョンは1.2.10でした。私はそれを削除しました。私の開発サーバーには、もう一度別のバージョンがありました。私もそれを削除しました。私は再建した。私は再配置しました。私は
<dependentAssembly>
<assemblyIdentity name="log4net" publicKeyToken="669E0DDF0BB1AA2A" culture="neutral"/>
<bindingRedirect oldVersion="0.0.0.0-1.2.10.0" newVersion="1.2.11.0"/>
</dependentAssembly>
を設定ファイルに追加しました。何も違いがないようです。私の展開プロジェクトは、展開されているlog4netアセンブリの正しいバージョンと署名を示しています。
私は他に何ができるのか分かりませんが、ロギングライブラリがアプリケーションの実行を妨げていると非常に不満を感じています。
私は何が欠けていますか?
私は同じことをしなければなりませんでした。問題は、依存関係にlog4netのバージョンが競合する必要がある場合です。 –
回避策ではなく、この問題に対する実際の解決策については、@ keithl8041の回答を参照してください。 :) –
@ JohnySkovdal、実際に私は回避策と呼んでいます。つまり、廃止予定のライブラリと古いライブラリキーを明確なEOLで引き続き使用する必要があります。それは将来あなたの選択肢を制限します。 –