最近私たちのデータオブジェクトにlog4net.dllが追加されました。我々のデータオブジェクトが完全に構築しますが、あなたが参照するものを構築しようとすると、我々のデータは、次のエラーを取得オブジェクト: "どのようにしても競合を解決できません"というエラーを修正するには?
が、私は問題の詳細な情報を得るために私を有効に次 thread見つかりました。No way to resolve conflict between "log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" and "log4net, Version=1.2.9.0, Culture=neutral, PublicKeyToken=b32731d11ce58905". Choosing "log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" arbitrarily.
log4netは、このプロジェクトでさまざまなことに使用されています。例えば、水晶は1.2.9をGACにインストールしました。私はinfragicticsが1.2.10を使用していることを知っています。
特定のディレクトリ(c:\references
)があります。すべてのDLLをビルドし、すべてのアプリケーションが内部DLLを参照するためのディレクトリです。だから私は具体的に私のデータオブジェクトの参照をバージョン1.2.11であるc:\ references \ log4net.dllに設定しました。上記のエラーメッセージに1.2.11が表示されないので、どちらが奇妙ですか。 dllは特定のバージョンで参照されています:= True &ローカルコピー:= True。ビルドディレクトリ& 1.2.11のlog4netが正しく移動したかどうか確認しました。
それはここに役立ちます場合は、詳細なエラーメッセージの一部です:
There was a conflict between "log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" and "log4net, Version=1.2.9.0, Culture=neutral, PublicKeyToken=b32731d11ce58905".
No way to resolve conflict between "log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" and "log4net, Version=1.2.9.0, Culture=neutral, PublicKeyToken=b32731d11ce58905". Choosing "log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" arbitrarily.
References which depend on "log4net, Version=1.2.10.0, Culture=neutral, PublicKeyToken=692fbea5521e1304" [C:\Windows\assembly\GAC_32\log4net\1.2.10.0__692fbea5521e1304\log4net.dll].
C:\Windows\assembly\GAC_MSIL\CrystalDecisions.Shared\13.0.2000.0__692fbea5521e1304\CrystalDecisions.Shared.dll
References which depend on "log4net, Version=1.2.9.0, Culture=neutral, PublicKeyToken=b32731d11ce58905" [C:\Program Files (x86)\Business Objects\Common\4.0\managed\log4net.dll]. c:\references\DBObjectAdoNet.dll
Project file item includes which caused reference "c:\references\DBObjectAdoNet.dll".
を更新:これまでのところ、私はエラーを修正するために見つけた唯一の方法は、DBObjectAdoNet.dllを参照するものでlog4netのを参照することです。これは、実際には私たちのために役に立った解決策ではありません。ほとんどのシステムでは、 のすべてがそれを使用しています。
2回目のアップデート:問題を解決するためにlog4netをGACの考えに入れようとしましたが、それでも問題は解決しません。
第3の更新:Microsoftへのサポートコールを行いました。彼らは私がAssembly.LoadFrom()を使用することを望んでいます。これは、1つのアプリケーションで300,000を超える呼び出しを行うため、非常に躊躇しています。
私のマシンでCrystalランタイムをアンインストールした場合、エラーが消えてしまいました。私が知る限り、log4net 1.2.10.0をGACは.NET Framework 2.0フォルダの下にあります。これは、アプリケーションが.NET Framework 4アプリなので重要ではありません。
'quote'私のマシンで水晶ランタイムをアンインストールするとわかりました。'/quote' - question:** crystal runtime **?何** Crystalランタイム**? –
@Robert Crystal 11 x86 for .NET Framework 4.私は問題が発生したときにx64版でも同じことが起こったと思います。 – coding4fun
問題を解決できなかったプロジェクトにlog4netバージョンのリファレンスを追加しましたが、これで問題は解決しました。 –