我目前有一个带有 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.MvvmLightLibs NuGet 包。
在四处寻找这个程序集后,我注意到有不同的版本,一个用于 WP8,一个用于 Silverlight 4,等等。在所有这些版本中,我不确定该使用哪个。
单元测试项目的目标是 .NET Framework 4.5,因此我为该版本添加了 System.Windows 程序集,但随后出现以下错误:
error : CA0001 : Could not resolve reference to System.Windows, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e, Retargetable=Yes
看到这是一个代码分析错误,我很想简单地忽略它并继续,但我想知道是否有人对如何解决这个问题有任何想法,或者忽略它是否安全?