【问题标题】:Simple.OData how to consume json?Simple.OData如何消费json?
【发布时间】:2014-06-18 23:17:34
【问题描述】:

我目前在 Xamarin 应用程序中使用 OData - 在 iPhone 5 之前的设备上存在严重的性能问题。我相信这是因为一个简单的请求会返回大量 Xml - 这必须由电话。 使用 Json 将有效负载大小减少到 1/10。

(注意:我指的是它会减少客户端库必须做的工作量,而不是它会更快地通过网络传输)

如何在 Simple.OData 中开启 Json? Xml 在 iPhone 4 上基本无法使用。

谢谢

【问题讨论】:

  • 我已经取出 Simple.OData 来发出实际请求,现在只使用 RestSharp.MonoTouch。我仍然使用 Simple.OData 来制定请求 URI - 这样我就可以继续使用我的所有 Linq 查询......我只是没有实际执行它 - 我从 GetCommandTextAsync 获取 URI,并将其传递给 ReshSharp。将我的应用程序的性能提高了 10 倍!但是,我会热切地等待 Simple.OData json 支持...

标签: json odata simple.odata


【解决方案1】:

JSON 支持已添加到 Simple.OData.Client 4.0。现在应该可以正常工作了。

【讨论】:

  • 嗨 Vagif,您对以下问题有任何想法:stackoverflow.com/questions/29497535/…
  • 如何启用它?我在使用 SOC 查询时收到 XmlException,说 System.Xml.XmlException: 'Data at the root level is invalid. Line 1, position 1.'。 (StackTrace)
【解决方案2】:

根据 OData 协议,在 http header 中添加以下内容将使服务器使用 Json 格式: Accept:application/json

或者在 url 中添加 $format,如下所示:

BaseUrl\Customers?$format=application/json

【讨论】:

  • 请注意具体问题“如何在 Simple.OData 中打开 Json”。 Simple.OData 不仅需要向服务器请求 Json,还需要能够理解和解析响应。
猜你喜欢
  • 2019-08-27
  • 2018-04-28
  • 2016-03-22
  • 1970-01-01
  • 1970-01-01
  • 2021-08-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多