![](/img/trans.png)
[英]How to serilize/deserilize Json Object to C# class
[英]How to deserilize array of json Object in c#
嗨,我想從從 Web 服務返回的 JSON 對象中讀取 Id:
[{"id":11,"username":"test5"}]
代碼:
HttpResponseMessage response = null;
using (response = httpClient.PostAsync(url, content).Result)
{
try
{
response.EnsureSuccessStatusCode(); //200 Ok
string responJsonText = response.Content.ReadAsStringAsync().Result;
JObject res = JObject.Parse(responJsonText);
//if ((int)res["id"][0] > 0)
// {
var uid = (int)res["id"][0];
if (uid > 0)
{
return uid;
}
else
{ return 0; }
// }
// else
//{ return 0; }
}
我如何使用 C# 從 Json Response 中讀取 Id 和用戶名?
我收到以下消息的異常:
從 JsonReader 讀取 JObject 時出錯。 當前 JsonReader 項不是對象:StartArray。 小路
您可以創建一個與您的 json 結構匹配的模型:
public class User
{
[JsonProperty("id")]
public int Id { get; set; }
[JsonProperty("username")]
public string Username { get; set; }
}
然后使用 Newtonsoft.Json nuget 包反序列化 json 字符串,如下所示:
string json = @"[{""id"":11,""username"":""test5""}]";
var users = JsonConvert.DeserializeObject<List<User>>(json);
string json = @"[{""id"":11,""username"":""test5""}]";
JArray array = JArray.Parse(json);
int id = array.First["id"].Value<int>();
string username = array.First["username"].Value<string>();
我假設數組將包含至少 1 個元素,並且會有一個id
和username
屬性。 應添加適當的錯誤處理代碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.