0

突然、Ninject からクラスのインスタンスを取得するときに FileLoadException が発生します。

正確な例外は次のとおりです。

System.IO.FileLoadException: "ファイルまたはアセンブリ 'Quartz、Version=2.3.3.0、Culture=neutral、PublicKeyToken=f6b8c98a402cc8a4' またはその依存関係の 1 つを読み込めませんでした。見つかったアセンブリのマニフェスト定義がアセンブリ参照と一致しません。(例外) HRESULT から: 0x80131040)"

エラー メッセージを読むと、Quartz のアセンブリをバージョン 2.3.3.0 で読み込もうとしているのに、指定されたバージョンが別のバージョンであることがはっきりとわかります。

Quartz の参照とすべての参照状態 v1.0.1.2 について、ソリューション全体 (.csproj を含む) を検索しました。ファイル システムのパスで Quartz.dlls を検索しましたが、バージョン 1.0.1.2 の dll しか見つからなかったため、2.3.3.0 をロードしようとする理由がわかりません。

この例外を解決するために私が試みることができる手順を知っていますか?

前もって感謝します

4

2 に答える 2

0

これは、Quartz に依存する他の nuget パッケージ (Quartz.Unity など) をインストールすると発生します。依存関係に「最も低い」オプションを選択すると、他のパッケージをインストールするときに、Quartz 2.3.3.0 が依存関係として設定されます。ただし、Quartz 2.4.1 がパッケージにインストールされています。したがって、エラーが発生します。

解決策: プロジェクトに最新のバージョンがインストールされている場合は、他のパッケージをインストールするときに、依存関係の「最高」オプションを選択します。

于 2016-10-18T07:22:10.903 に答える