C#:如何构建类似于JSON的半结构化对象?
我想迭代一个2D数组C#:如何构建类似于JSON的半结构化对象?,c#,json,poco,C#,Json,Poco,我想迭代一个2D数组contents[,],并构建一个类似JSON的对象作为一个函数。结构如下图所示。然后,这将被发送到服务器端点,由服务器端函数处理并存储到数据库中 在JavaScript中,这很简单,但这是因为类型是动态的。据我所知,在C#中构建sem结构化数据有两种选择: 创建此处提到的模型:然后转换为JSON 构建一个嵌套的哈希表(不是字典,因为在需要构建对象之前我不知道值的类型) 在C#中这样做的正常方式是什么?我还遇到了术语“POCO”,它似乎在某种程度上与第1点相对应 [
contents[,]
,并构建一个类似JSON的对象作为一个函数。结构如下图所示。然后,这将被发送到服务器端点,由服务器端函数处理并存储到数据库中
在JavaScript中,这很简单,但这是因为类型是动态的。据我所知,在C#中构建sem结构化数据有两种选择:
[
{
tableName: someName,
fields: [ordered, list, of, field, names],
values: [
[ordered, list, of, cell, row, values],
[ordered, list, of, cell, row, values],
[ordered, list, of, cell, row, values]
]
},
{
tableName: someName,
fields: [ordered, list, of, field, names],
values: [
[ordered, list, of, cell, row, values],
[ordered, list, of, cell, row, values],
[ordered, list, of, cell, row, values]
]
},
etc
]
似乎您的结构是刚性的,只有数据值不同,在这种情况下,您应该只使用对象类型作为值。然后,你的班级可以看起来像这样
class MyObject
{
String Tablename;
List<Field> myFields = new List<Field>();
List<object> values = new List<object>();
}
类MyObject
{
字符串表名;
List myFields=新列表();
列表值=新列表();
}
或者,如果需要检索任何其他数据,您可以直接创建一个Json对象并解析它。c#具有动态类型:Json.Net库广泛用于处理Json:(312011通过nuget下载最新版本)。至于什么方法最适合你,我无法回答,因为这个问题太广泛了,我不知道你在做什么工作,你使用的数据,或者你的个人喜好是什么。可以采取很多方法。结构的哪一部分是动态的?我觉得这很有条理。您有一个名为的表,其中包含字段列表和将放入这些字段的数据。只是数据的值是不同的类型吗?还是我遗漏了什么?是的。只有值的类型不同于JavaScript,对象的概念略有不同,因为您可以直接构建它们。另一方面,C#似乎需要一个模板。我认为这个问题的答案可能对那些没有使用基于类的体系结构的OO语言背景的人有益。如果只是值是不同的类型,那么就使用“对象”类型。