我有C#WCF服務。我想將其轉換爲JSON包含更多表的JSON String.DataSet結果一些錯誤的JSON格式。JSON格式 - 將數據集轉換爲JSON
{
"Target1": [
{
"BusinessUnit": "MASS",
"RetailerCode": "TEST0002"
},
{
"BusinessUnit": "MASS",
"RetailerCode": "TEST0008"
}
]
}{
"PDCheque1": [
{
"BusinessUnit": "MASS",
"AccountCode": "TEST0003"
}
]
} 0 {
"OutStanding1": [
{
"BusinessUnit": "MASS",
"Year": "2010"
},
{
"BusinessUnit": "MASS",
"Year": "2010"
}
]
}
在這裏被coverting方法:
//Converting dataset to json
public String ConverTableToJson(DataSet dsDownloadJson){
String tableData = "";
StringBuilder Sb = new StringBuilder();
Sb.Append("{\"");
foreach (DataTable dt in dsDownloadJson.Tables)
{
DataTable dtDownloadJson = dt;
string[] StrDc = new string[dtDownloadJson.Columns.Count];
string HeadStr = string.Empty;
Sb.Append(dtDownloadJson.TableName + "1\" : [");
if (dtDownloadJson.Rows.Count > 0)
{
for (int i = 0; i < dtDownloadJson.Columns.Count; i++)
{
StrDc[i] = dtDownloadJson.Columns[i].Caption;
HeadStr += "\"" + StrDc[i] + "\" : \"" + StrDc[i] + i.ToString() + "¾" + "\",";
}
if (HeadStr.Length > 0)
{
HeadStr = HeadStr.Substring(0, HeadStr.Length - 1);
for (int i = 0; i < dtDownloadJson.Rows.Count; i++)
{
string TempStr = HeadStr;
Sb.Append("{");
for (int j = 0; j < dtDownloadJson.Columns.Count; j++)
{
TempStr = TempStr.Replace(dtDownloadJson.Columns[j] + j.ToString() + "¾", dtDownloadJson.Rows[i][j].ToString());
}
Sb.Append(TempStr + "},");
}
Sb = new StringBuilder(Sb.ToString().Substring(0, Sb.ToString().Length - 1));
}
else
{
Sb.Append("0 }");
}
}
else
{
Sb.Append("0 }");
}
Sb.Append("]}");
}
return Sb.ToString(); ;
}
如果表中不包含記錄則需要返回 「0」 等`表名[{0}]」
它是這樣來的。它在第二套PDCheque1
地方錯了。
我想如何格式化?
在Android中,我希望使用表格名稱來處理每個集合,例如PDCheque1
,'Target1`就像智者一樣。
第1套是OK拿到result.When我通過JSONArray array = jsonobject.getJSONArray(tablename);' It say no
`PDCheque1``
請幫我...提前
感謝