我的数据表采用以下格式
MCuserid Firsatname address1 address2 city educationinfo institute degree
1760年Rickert vbn addresstwo hyderabad第二学院第二学位 1766年Abhinav jhgjkhk testaddress mtech 1766年Abhinav jhgjkhk testaddress BTech我需要在c#
中输出以下json格式[
{
"MCUserID" : 1760,
"FirstName": "Rickert",
"Address1" : "vbn",
"Address2" : "address two",
"city : "hyderabad"
"EducationInfo": [
{
Institute: "Second College",
Degree: "Second Degree",
}
]
},
{
"MCUserID" : 1766,
"FirstName": "Abhinav",
"Address1" : "jhgjkhk",
"Address2" : " test address",
"city : ""
"EducationInfo": [
{
Institute: "",
Degree: "mtech",
},
{
Institute: "",
Degree: "btech",
}
]
} ]
答案 0 :(得分:2)
这里的问题是DataTable
中的每一行都是一组简单的名称/值对,但您希望每个人的EducationInfo
作为结果JSON中的另一个图层。此外,如果所有字段但 EducationInfo
匹配,则您希望多行成为单个JSON对象。
没有一个简单的“Go()”方法可以为您提供开箱即用的功能。
我建议创建Student
和EducationInfo
类来保存信息,并将数据自己聚合到Student[]
数组中。
然后,您只需使用您喜欢的序列化程序对它们进行序列化。作为副作用,这使调试变得更加容易。