私は現在、WP71プロジェクトとWP8プロジェクトを備えたVS2012ソリューションを持っています。これらの各プロジェクトは、ビューモデルを保持するポータブルクラスライブラリプロジェクトを参照しています。PCLを参照し、ビューモデルのテストを含む単体テストプロジェクトもあります。
私が抱えている問題は、単体テストプロジェクトをコンパイルすると、次のエラーが発生することです。
error CS0012: The type 'System.Windows.Input.ICommand' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Windows, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes'
単体テストプロジェクトを含むすべてのプロジェクトは、Portable.MvvmLightLibsNuGetパッケージを参照します。
このアセンブリを探し回った後、WP8用とSilverlight 4用など、さまざまなバージョンがあることに気付きました。これらすべてのバージョンのうち、どちらを使用すればよいかわかりません。
単体テストプロジェクトは.NETFramework4.5を対象としているため、動作するそのバージョンのSystem.Windowsアセンブリを追加しましたが、次のエラーが発生します。
error : CA0001 : Could not resolve reference to System.Windows, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes
これはコード分析エラーであるため、これを無視して続行したいのですが、これを解決する方法や、無視しても安全かどうかについて誰かが考えているのではないかと思いました。