RestSharp - 无法加载文件或程序集'Newtonsoft.Json,Version = 4.0.3.0

时间:2011-12-15 21:47:10

标签: json.net restsharp yammer

我正在使用RestSharp(非常棒)向Yammer.com的REST API发出GET请求,并收到此错误:

  

无法加载文件或程序集“Newtonsoft.Json,Version = 4.0.3.0,Culture = neutral,PublicKeyToken = 30ad4fe6b2a6aeed”或其中一个依赖项。定位的程序集的清单定义与程序集引用不匹配。 (HRESULT异常:0x80131040)

从调试开始,我可以看到我对我正在尝试获取的Yammer.com消息得到了很好的响应,并且代码在反序列化中引发了异常。

  • 这个问题是否与我在代码中编写反序列化错误或者与程序集兼容性的实际问题有关?
  • 我该如何解决?

3 个答案:

答案 0 :(得分:1)

您对Yammer.com的请求可能会返回一个json字符串(数据)。 ..可能他们的API暴露了一个反序列化函数,里面使用Json.NET库,即:

YammerData dataToReturnedByApi = JsonConvert.DeserializeObject<YammerData>(jsonString);

所以基本上你可能需要下载并将JSON.NET dll包含到你的项目中。 第二个选项:您的目标是.NET版本低于Json库。 (即2.0和4.0)。尝试将.NET目标更改为4.0。

答案 1 :(得分:1)

对于仍然坚持这一点的人。今天适用于RestSharp版本102(2012年1月)。

  1. 手动删除对RestShart和newtonsoft JSON的项目引用
  2. 手动下载最新版本的RestSharpJson.Net。不要使用nuget
  3. 手动添加对刚刚下载到项目中的dll的引用

答案 2 :(得分:1)

RestSharp有一个没有JSON库依赖的新包。

http://nuget.org/packages/RestSharp/103.0.0-nojsondotnet