0

NuGet を使用してサード パーティのライブラリをプロジェクトに追加した後、奇妙なエラーがいくつか発生しました。プロジェクトは .NET 4.5.2 を対象としています。標準システムタイプが正しいバージョンではないというエラーが表示されます。

CS0012: 型 'System.Collections.Generic.IEnumerable`1' は、参照されていないアセンブリで定義されています。アセンブリ 'System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' への参照を追加する必要があります。

プロジェクト フォルダーをクリーンアップし、bin フォルダーを削除し、NuGet パッケージを再インストールし、参照を再度追加しましたが、役に立ちませんでした。

ライブラリはRemotion.Linq です

レジストリによると、次の .NET バージョンがマシンにインストールされています

v2.0.50727 2.0.50727.4927 SP2

v3.0 3.0.30729.4926 SP2

v3.5 3.5.30729.4926 SP1

v4
クライアント 4.6.01038 フル 4.6.01038 v4.0
クライアント 4.0.0.0

ここで何が起こっているか知っている人はいますか?

4

2 に答える 2

0

これは誤解を招くエラーであることが判明しました。ライブラリは .NET 4.5.2 に対してビルドされましたが、.NET 4.5.1 がインストールされていました。Microsoft はこれをKB 記事(KB2971005) で説明していますが、この記事を簡単に見つけるには、問題が何であるかを知る必要があります。いろいろ探した結果、なんとなくたどり着きました。

解決策は、更新されたバージョンの Microsoft .NET Framework 4.5.2 Developer Pack をインストールすることです。

于 2016-01-26T17:24:24.160 に答える
0

これは、サードパーティのライブラリがフレームワークの 4.0 をターゲットにしていることを示唆しています。ライブラリの新しいバージョンを見つけるか、プロジェクトのプロパティでターゲット フレームワークを 4.5 ではなく 4.0 に設定する必要があります。

于 2015-12-14T11:37:47.767 に答える