簡體   English   中英

C# JsonConvert.DeserializeObject<dynamic> 返回 null object</dynamic>

[英]C# JsonConvert.DeserializeObject<dynamic> returns a null object

我希望你能幫助我。 我正在嘗試將響應 object 反序列化為 C# 中的動態 object。 代碼如下:

var result = await message.Content.ReadAsStringAsync();
dynamic response = JsonConvert.DeserializeObject<dynamic>(result);

foreach (dynamic backgroundTaskURL in response)
{
    filaUPloads.Add(backgroundTaskURL.href);
}

上面的響應動態object有以下值:

{{
    "href": "/me/background-tasks/77fa9922-5a1b-4fce-ada4-7c5c5d093270"
}}

在第一次 foreach 交互時,backgroundTaskURL 動態 object 讀取:

{
    "href": "/me/background-tasks/77fa9922-5a1b-4fce-ada4-7c5c5d093270"
}

由於某種原因,我無法理解,backgroundTaskURL 動態 object 沒有解析“href”屬性。

請指教! 謝謝!

如果您使用的是 Newtonsoft.Json,則可以改用 JObject,我相信這只是動態 object 上的類似 JSON 映射的抽象。

var result = await message.Content.ReadAsStringAsync();
dynamic response = JsonConvert.DeserializeObject<JObject>(result);

foreach (var backgroundTaskURL in response)
{
    filaUPloads.Add(backgroundTaskURL["href"]);
}

嘗試以下

 public class ListRecev
    {
        public string href { get; set; }

    }
  var resultjson = JsonConvert.DeserializeObject<ListRecev>(result);
  foreach (var backgroundTaskURL in resultjson)
  {
   filaUPloads.Add(backgroundTaskURL.href);
  }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM