c# - 如何将 JSON 对象数组反序列化为 C# 匿名类型?

标签 c# json json.net

我反序列化单个json对象没问题

string json = @"{'Name':'Mike'}";

到 C# 匿名类型:

var definition = new { Name = ""};
var result = JsonConvert.DeserializeAnonymousType(json, definition);

但是当我有一个数组时:

string jsonArray = @"[{'Name':'Mike'}, {'Name':'Ben'}, {'Name':'Razvigor'}]";

我卡住了。

如何实现?

最佳答案

解决方法是:

string json = @"[{'Name':'Mike'}, {'Name':'Ben'}, {'Name':'Razvigor'}]";

var definition = new[] { new { Name = "" } };

var result = JsonConvert.DeserializeAnonymousType(json, definition);

当然,由于 result 是一个数组,您将像这样访问单个记录:

string firstResult = result[0].Name;

您还可以在其上调用 .ToList() 和类似的方法。

关于c# - 如何将 JSON 对象数组反序列化为 C# 匿名类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45797080/

相关文章:

c# - Excel如何根据单元格宽度在单元格中调整文本

ruby-on-rails - 在 Rails 中将记录转换为 JSON 时包括模型的虚拟属性

ios - Swift NSJSONSerialization.JSONObjectWithData() 无法仅读取 "OK"字符串的数据

c# - JSON.NET 的 JsonConvert 我做错了什么

c# - Newtonsoft Json - OutOfMemoryException 异常

c# - 使用 C# 进行 JSON-RPC HTTP 调用

C# 为什么不能在 winform 构造函数中设置 GUI 特定操作?

c# - WebClient.DownloadString(url) 当此 url 返回 404 页面时,我该如何跳过它?

JavaScript SyntaxError : JSON. 解析:意外的字符行 1

c# - 为什么 JSON.NET 在一行中序列化所有内容?