c# - 用c#解析json对象
问题描述
如何使用 c# 解析 json 对象,如下所示?所以 MessageBox.show (message);
所以; MessageBox.Show(结果[0].id);
`
{
"message":"Customer updated",
"result":[
1,
[
{
"id":1,
"customer_name":"Andrew",
"customer_lastname":"freeman",
"customer_identity":"12345678",
}
]
]
}
`
解决方案
您可以安装 Newtonsoft.Json Nuget 包,然后使用它来访问 JSON 对象,如下所示:
using Newtonsoft.Json;
MessageBox.Show(myJsonObject["result"][0]["id"]);
假设您的 json 对象存储在 myJsonObject 变量中。
要将 json 存储在 JObject(或类)中,您可以对其进行序列化/反序列化或手动创建 JObject:
var myJObject = new JObject(
new JProperty("message", "Customer updated"),
new JProperty("result",
new JArray(
new JObject(
new JProperty("id", 1),
new JProperty("customer_name", "Andrew"),
new JProperty("customer_lastname", "freeman"),
new JProperty("customer_identity", "12345678")
)
)
)
);
虽然看起来您的 JSON 可能无效 - 您的结果数组中有一个没有属性名称的数组。
您可以将结果对象直接存储在第一个数组中,就像我在上面的示例中所做的那样,并删除 1 ,因为您在 id 字段中有这个:
{
"message":"Customer updated",
"result":[
{
"id":1,
"customer_name":"Andrew",
"customer_lastname":"freeman",
"customer_identity":"12345678",
}
]
}
推荐阅读
- c++ - 为什么使用 2 个嵌套循环(O(n^2) 复杂度)解决两个和问题,在仅更改循环计数器逻辑时运行得更快?
- javascript - 在html输入字段中加载ajax值
- kendo-ui - Kendo Ui Scheduler 放大和缩小按钮
- python - 获取一列中所有值均为 nan 的行
- svg - 未定义图像上 href 的 SVG 命名空间前缀 xlink
- php - Laravel:注册“语言环境”中间件
- scala - ZIO,入门,纯功能下载器
- php - ErrorException (E_NOTICE) 未定义偏移量:3 Laravel
- android - 标签项内的 Android 片段导航
- android - 无法解析配置“:react-native-vector-icons:classpath”的所有工件