在 VS 2012 中运行 windows phone 项目时,我收到了这个错误:
{System.IO.FileNotFoundException: Could not load file or assembly 'Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed' or one of its dependencies. The system cannot find the file specified.
File name: 'Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed'
at MobileConnection.SSCClient.SSCConnection.GetHostNameAndPort()
at MobileConnection.SSCClient.SSCConnection.InitializeSSCConnection(Boolean runningState)}
.csproj 文件中对应的条目是:
<Reference Include="Newtonsoft.Json">
<HintPath>..\packages\Newtonsoft.Json.4.5.11\lib\sl4-windowsphone71\Newtonsoft.Json.dll</HintPath>
</Reference>
并且,在 packages.config 中:
<package id="Newtonsoft.Json" version="4.5.11" targetFramework="wp80" />
我调试了一段时间,通过nuget重新安装了newtonsoft.json包。
但对我有用的解决方案是将“私有”属性设置为“真”。
.csproj 文件中的更新条目:
<Reference Include="Newtonsoft.Json">
<HintPath>..\packages\Newtonsoft.Json.4.5.11\lib\sl4-windowsphone71\Newtonsoft.Json.dll</HintPath>
<Private>True</Private>
</Reference>
我无法理解它是如何工作的或问题是什么。msdn 文档上的描述也没有多大帮助http://msdn.microsoft.com/en-us/library/vstudio/bb629388.aspx。