c# - 如何拆分数组中的键/值对?
问题描述
我有这种类型的键值存储在我的数据库中:
[{"SelFoodId":"2","SelQuantity":"5"},
{"SelFoodId":"7","SelQuantity":"3"},
{"SelFoodId":"9","SelQuantity":"7"}]
但是现在我想在 c# 中以这种形式拆分这个 JSON 数组,比如
SelFoodId = {2,7}, SelQuantity = {5,7}
解决方案
1.到这里 ( json2csharp ) 并从你的JSON中创建一些对象
这会给你这样的东西
public class MyAwesomeSomething
{
public string SelFoodId { get; set; }
public string SelQuantity { get; set; }
}
2.添加Json.NET Nuget包Newtonsoft.Json
3.查找JsonConvert.DeserializeObject 方法(字符串)和这个有用的示例
将 JSON 反序列化为 .NET object.n。
4.写一些代码
示例
var json = "[{\"SelFoodId\":\"2\",\"SelQuantity\":\"5\"},{\"SelFoodId\":\"7\",\"SelQuantity\":\"3\"},{\"SelFoodId\":\"9\",\"SelQuantity\":\"7\"}]";
var list = JsonConvert.DeserializeObject<List<MyAwesomeSomething>>(json);
foreach(var item in list)
{
Console.WriteLine(item.SelFoodId + " " + item.SelQuantity);
}
输出
2 5
7 3
9 7
推荐阅读
- html - 实时服务器不从 css 加载 img
- java - 谷歌地图应用程序中未显示地理意图标签
- python - 导入已安装的 pygame 模块时出错
- swift - 鼠标按下行为 NSControl 和 NSView 的第一响应者
- python - LSTM网络的图解说明
- swift - Swift 排序的数组总是按升序排列
- javascript - React/ES6 减少对象
- java - 我无法在 Android Studio 上启动模拟器
- javascript - 未捕获的错误:意外的行:第 541 行的 THREE.OBJLoader.parse 中的“n 0 0 1”
- c# - 在 asp.net 身份中向帐户控制器中的登录操作添加附加参数的正确方法是什么?