【问题标题】:Deserialize OData to object?将 OData 反序列化为对象?
【发布时间】:2015-01-09 08:35:09
【问题描述】:

我的 web api 操作返回一个 odata json 格式的实体,例如:

{
  "@odata.context":"http://x/odata/$metadata#Category","value":[
   {
      "Id":734,"Number":"100","Description":"category description"
   }]
}

在使用 OData 之前,我的操作以 JSON 格式返回,所以我曾经得到这样的响应:

var result = response.Content.ReadAsAsync<T>().Result;

但是,此方法不再适用于 OData JSON。如何将结果反序列化到我的对象中?

【问题讨论】:

  • 您可以使用本地客户端并通过 linq 进行交易
  • 我不确定为什么它是 OData json 还是简单的 JSON 很重要。它们都遵守 JSON 标准吗?
  • 上面的OData json例子不能反序列化成对象。

标签: c# json asp.net-web-api odata


【解决方案1】:

有几个客户端库可以为您完成这项工作。您可以尝试 OData Code Generator VS 扩展或 Simple.OData.Client。

【讨论】:

    猜你喜欢
    • 2018-07-17
    • 2019-11-14
    • 2021-12-16
    • 2020-05-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多