2011-07-05 19 views
2

コンパイル後、私のソリューションには次のような警告が表示されます。 enter image description hereVisual Studio C#参照 - 警告

警告をダブルクリックすると、何かわからない質問が表示されます。 enter image description here

VSが話していることを理解していれば、分かち合ってください。

答えて

5

これは、ソリューション内のさまざまなプロジェクトで、依存関係のわずかに異なるバージョンを参照したようです。つまり、同じアセンブリの異なるバージョンの型が異なるとみなされるため、依存関係の型を持つ参照を渡すと、プロジェクトを試して実行するときに予期しないエラーが発生する可能性があります。

など。

Project1のバージョン1.0 Project2を依存関係SomeAssembly.dllを使用するが、バージョン1.1 でProject2を、そのタイプがSomeAssembly.dllに定義されているSomeTypeの参照を渡すためにプロジェクト2試みに依存

コードとしてのProject1を有している依存SomeAssembly.dllを使用そのコードからプロジェクト1のコードに変換することができます。プロジェクト1では、アセンブリの異なるバージョンの型が認識されないため、エラーが発生します。

このタイプのほとんどのエラーはコンパイラによってキャッチされる可能性があるため、問題はもっと微妙かもしれませんが、複雑な依存関係や依存関係注入を使用すると、

Visual Studioは、すべての依存関係を特定のバージョンにリダイレクトするための回避策を効果的に提供することを提案しています。私はあなたが手動で自分でそれを修正することができれば修正を取ることを避けるだろう。

あなたの解決策を調べて、すべての参照をチェックして、すべてのバージョンが一致することを確認する方がよいでしょう。これを正しく実行するには参照を削除して追加する必要があるかもしれませんが、これを行うと長期的に予期しない問題が回避されます。

+0

あなたの回答を受け入れる答えにほぼ同意します。同じアセンブリの異なるバージョンの型が異なるとみなされるため、依存関係の型を持つ参照を渡す場合、その部分の簡単な例を挙げてください。ありがとうございました! –

関連する問題