【发布时间】:2010-04-16 14:46:33
【问题描述】:
我正在尝试在 .Net 3.5 中使用 C# 和 DataContractJsonSerializer 生成 JSON。问题是我不知道如何为我需要的结果构建正确的结构。
我尝试使用哈希表、列表对象和数组列表来重现 PHP 的关联数组,但无法弄清楚如何使用 DataContractJsonSerializer 以最佳方式生成我的结果,而无需创建自己的递归循环来构建 JSON。
最接近的方法是使用 Dictionary > 方法,但结果太大,因为我无法“命名”键。
这是我得到的:
[
{
"Key":"status",
"Value":[
{
"Key":"value",
"Value":"ok"
}
]
},
{
"Key":"1",
"Value":[
{
"Key":"name",
"Value":"Result1"
},
{
"Key":"details",
"Value":"Result 1 details"
}
]
},
{
"Key":"2",
"Value":[
{
"Key":"name",
"Value":"Result2"
},
{
"Key":"details",
"Value":"Result 2 details"
}
]
},
{
"Key":"caller",
"Value":[
{
"Key":"value",
"Value":"1135345"
}
]
}
]
这就是我想要的:
{
"status":"ok",
"response":[
{
"id":1,
"name":"Result1"
"details":"Result 1 details"
},
{
"id":2,
"name":"Result2"
"details":"Result 2 details"
},
{
"id":3,
"name":"Result3"
"details":"Result 3 details"
],
"caller":"1135345"
}
是否有人知道如何使用 C# 生成这段 JSON 而无需加载整个 Json.NET 框架?我需要尽快生成它,因为这个项目旨在成为一个站点搜索引擎。
【问题讨论】: