我有以下json:
{
"OBECT_TAG":
[
{
"PROPERTY1" : "value1",
"PROPERTY2" : "value2",
},
{
"PROPERTY1" : "value1",
"PROPERTY2" : "value2",
},
{
"PROPERTY1" : "value1",
"PROPERTY2" : "value2",
}
]
}
我希望为数组中的每个对象重复OBJECT_TAG
。我试过这个并且c#中的反序列化失败了。是json兼容还是什么使它符合要求?
{
[
"OBECT_TAG":
{
"PROPERTY1" : "value1",
"PROPERTY2" : "value2",
},
"OBECT_TAG":
{
"PROPERTY1" : "value1",
"PROPERTY2" : "value2",
},
"OBECT_TAG":
{
"PROPERTY1" : "value1",
"PROPERTY2" : "value2",
}
]
}
如果有必要,原因是对象变得非常大,有很多级别,所以当手动编辑时,很容易识别每个主对象的起始位置,同时保持数组和简单的c#对象反序列化。
编辑:保留根对象
非常重要答案 0 :(得分:5)
Json对象具有名称和值的属性,其中value可以是另一个对象\ array \ primitive value。
Json数组包含其他没有名称的对象\ arrays \ primitives。
你问题的Json违反了上述两个方面。
<div class="title m-b-md">
{!!$name!!}
</div>
无效,因为没有属性名称。如果要将数组放在对象中,则必须将其命名为:
{
[...]
}
然后
{
"MyArray": [...]
}
无效,因为数组只是未命名值的列表,并且您尝试为其条目命名。
你能想到的最接近的是对象数组,其中每个对象包含带标记的命名属性,并且该标记对象包含属性:
[
"OBECT_TAG":
{
"PROPERTY1" : "value1",
"PROPERTY2" : "value2",
}
]