asp.NetDataSet変換josn出力例
1580 ワード
public class JsonUtil
{
public string ToJson(DataSet dataSet)
{
string jsonString = "{";
foreach (DataTable table in dataSet.Tables)
{
jsonString += """" + table.TableName + """:" + ToJson(table) + ",";
}
jsonString = jsonString.TrimEnd(',');
return jsonString + "}";
}
public string ToJson(DataTable dt)
{
StringBuilder jsonString = new StringBuilder();
jsonString.Append("[");
DataRowCollection drc = dt.Rows;
for (int i = 0; i < drc.Count; i++)
{
jsonString.Append("{");
for (int j = 0; j < dt.Columns.Count; j++)
{
string strKey = dt.Columns[j].ColumnName;
string strValue = drc[i][j].ToString();
Type type = dt.Columns[j].DataType;
jsonString.Append("""" + strKey + """:");
strValue = String.Format(strValue, type);
jsonString.Append("""" + strValue + """,");
}
jsonString.Append("},");
}
jsonString.Remove(jsonString.Length - 1, 1);
jsonString.Append("]");
return jsonString.ToString();
}
}
使用
JsonUtil ju = new JsonUtil();
Response.Write(ju.ToJson(ds));
解析に問題がある場合は、コードの「」「」を「」で置き換えることができます.