[英]How to Convert JSON Data to DataTable
我有 JSON 數據如下:
{
"Data":[
{
"Customer":"C1",
"ID":"11111",
"Desc":"Row 1",
"Price":"123456"
},
{
"Customer":"C2",
"ID":"22222",
"Desc":"Row 2",
"Price":"789012"
},
{
"Customer":"C3",
"ID":"33333",
"Desc":"Row 3",
"Price":"345678"
}
],
"Success":true
}
如何將此數據轉換為 C# 數據表,就像此表一樣
---------------------------------------------
Customer | ID | Desc | Price
---------------------------------------------
C1 | 11111 | Row 1 | 123456
C2 | 22222 | Row 2 | 789012
C3 | 33333 | Row 3 | 345678
並將成功值讀入變量
我想在我的代碼中使用成功變量並在 gridview 中顯示表格。
我已經嘗試過這段代碼,但它不起作用:
DataTable gdata = JsonConvert.DeserializeObject<DataTable>(result);
Json.NET 支持將數據表序列化為對象數組,但是 JSON 中的數據表嵌套在"Data"
屬性中,因此您需要將DataTable
包裝在一些根 ZA8CFDE6331BD59EB2AC966F8911C4B6 中。 匿名 object 應該足夠了:
var root = JsonConvert.DeserializeAnonymousType(result, new { Data = default(DataTable), Success = default(bool) });
var gdata = root?.Data;
var success = root?.Success ?? false;
或者,您可以像這樣引入通用根 model:
public class DataRoot<T>
{
public T Data { get; set; }
public bool Success { get; set; }
}
並做:
var root = JsonConvert.DeserializeObject<DataRoot<DataTable>>(result);
演示小提琴在這里。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.