System.Threading.Tasks.dll
から明示的に「参照を追加」してみてくださいC:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETCore\v4.5
。C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.5\Facades
または、ディレクトリを使用することもできます。
更新:への参照の削除に関する回答を読んだ後、問題をさらに調査しましSystem.Runtime
た。次を追加できます。System.Runtime
現在のバージョンのNuGetパッケージのエラーのため、への参照が追加されますMicrosoft.Tpl.Dataflow.4.5.1-rc
。System.Threading.Tasks.Dataflow.dll
Visual Studioで直接同じものへの参照を追加した場合、参照System.Runtime
は追加されず、問題は発生しません。
NuGetパッケージエクスプローラーを使用Microsoft.Tpl.Dataflow.4.5.1-rc.nupkg
すると、「NuGet公式パッケージソース」からオリジナルをダウンロードできます。パッケージMatadataの最後に表示されます
メタデータを変更して(を押すCtrl-K)、参照を削除できます。

その後、変更したファイルMicrosoft.Tpl.Dataflow.4.5.1-rc.nupkg
をいくつかのディレクトリに保存できます。NuGetソースのリスト(ここまたはここを参照)に新しい場所(ローカルディレクトリ)を追加すると、ローカルソースから新しいパッケージを追加できるようになります(プレリリースを含むすべてのパッケージを表示することを忘れないでください。下の写真):

変更されたものMicrosoft.Tpl.Dataflow.4.5.1-rc.nupkg
は追加System.Runtime
されず、プロジェクトはエラーなしでコンパイルされます。
そのため、このバグはVisual Studio 2012 RCには存在せず、さらには存在しませんMicrosoft.Tpl.Dataflow.dll
。Microsoft.Tpl.Dataflow
このバグは、現在「NuGet公式パッケージソース」で入手可能なプレリリースバージョンのNuGetパッケージのメタデータにあります。
パッケージが修正されるように、バグレポートをautorsに投稿できます。
更新2:私の答えがすでに解決済みとしてマークされていて、賞金が与えられたとしても、問題はまだ私の頭から離れていません。実際には、2つの未解決の問題があります。
- 未使用のアセンブリが存在
System.Runtime
すると、プロジェクトの構築中にエラーが発生する可能性があるのはなぜですか。
- NuGetパッケージのアンインストールまたは更新がどのように機能するかについていくつかの一般的な問題があります(詳細は後で参照してください)。
最初の問題が理由とは無関係に存在するという事実だけを受け入れましょう。2番目の問題は私を落ち着かなくさせます。ここに本当の問題があります。誰もが私をよりよく理解するために次の実験を行うことができます:
- Visual Studio2012RCで新しい空のコンソールアプリケーションを作成します。
- プロジェクトにへの参照がないことを確認し
System.Runtime
ます。
- 「ツール」/「ライブラリパッケージマネージャー」から「パッケージマネージャーコンソール」を開きます。
- 「パッケージマネージャーコンソール」でコマンド「Install-PackageMicrosoft.Tpl.Dataflow-Pre 」を実行します。
System.Runtime
との両方System.Threading.Tasks.Dataflow
がプロジェクトの参照のリストに含まれていることを確認します。
- 「パッケージマネージャーコンソール」でコマンド「Uninstall-PackageMicrosoft.Tpl.Dataflow 」を実行します。
System.Threading.Tasks.Dataflow
プロジェクトの参照のリストから削除されているが、参照のリストSystem.Runtime
には残っていることを確認します。
もう1つの実験を行い、変更のバージョンを変更しました。ここで、へMicrosoft.Tpl.Dataflow.4.5.1-rc.nupkg
の参照を削除し、System.Runtime
ローカルに保存しました(下に保存されます)。その後、プロジェクトの更新リストに「新しい」バージョンが表示されました。4.5.1-rc
4.5.1-rc1
Microsoft.Tpl.Dataflow.4.5.1-rc1.nupkg

Updateをインストールすると、への参照System.Runtime
も削除されません。
したがって、NuGetの「更新」と「アンインストール」の現在の実装には、バグまたは一般的な設計上の問題があります。プロジェクトにパッケージを追加し、プロジェクトを更新すると、すべての古いバージョンのすべての依存アセンブリの参照が取得されます。NuGetによって古いバージョンのパッケージから追加された古い参照は、アンインストールまたは更新中に削除されません。まず第一に、プロジェクト参照にガベージを含めること自体は良くありませんが、最初の問題(参照されていない参照が存在する場合のコンパイル中のエラーSystem.Runtime
)が存在するため、問題はさらに深刻になります。
したがって、NuGetで何も変更されない場合、の次のバージョンへの更新では、バージョン4.5.1(またはおそらく初期バージョン)Microsoft.Tpl.Dataflow
でインストールしたユーザーの問題は解決されません。Microsoft.Tpl.Dataflow
すべてのユーザーは、への参照をSystem.Runtime
手動で削除する必要があります。NuGet開発者が解決しなければならないのは本当のNuGetの問題だと思います。問題の説明は後でhttp://nuget.org/に投稿します。
NuGetに投稿したバグレポートはここにあります(テキストのフォーマットが完全ではないことをお詫びします)。