Преобразование строки json string, связанной с проблемой с (запятой) значением в поле значения.конвертировать json String в datatable?
actualy моя JSON строка [{"BNo":"345","GNo":"3453","FirstName":"fjai","LastName":"ljai","Address":"BARETI,CEVO, 13/2","Telephone":"051682247","BirthDate":"23-Jan-1981","Email":""}]
В том, что, пожалуйста, смотрите по адресу сценария "Address":"BARETI,CEVO, 13/2"
Он имеет в области значений. При преобразовании строки в базу данных я получил ошибку. Вот код, который я использовал новообращенный JSon строку DataTable
public DataTable JsonStringToDataTbl(string jsonString)
{
DataTable dt = new DataTable();
string[] jsonStringArray = Regex.Split(jsonString.Replace("[", "").Replace("]", ""), "},{");
List<string> ColumnsName = new List<string>();
foreach (string jSA in jsonStringArray)
{
string[] jsonStringData = Regex.Split(jSA.Replace("{", "").Replace("}", ""), ",");
foreach (string ColumnsNameData in jsonStringData)
{
try
{
int idx = ColumnsNameData.IndexOf(":");
string ColumnsNameString = ColumnsNameData.Substring(0, idx - 1).Replace("\"", "");
if (!ColumnsName.Contains(ColumnsNameString))
{
ColumnsName.Add(ColumnsNameString);
}
}
catch (Exception ex)
{
throw new Exception(string.Format("Error Parsing Column Name : {0}", ColumnsNameData));
}
}
break;
}
foreach (string AddColumnName in ColumnsName)
{
dt.Columns.Add(AddColumnName);
}
foreach (string jSA in jsonStringArray)
{
string[] RowData = Regex.Split(jSA.Replace("{", "").Replace("}", ""), ",");
DataRow nr = dt.NewRow();
foreach (string rowData in RowData)
{
try
{
int idx = rowData.IndexOf(":");
string RowColumns = rowData.Substring(0, idx - 1).Replace("\"", "");
string RowDataString = rowData.Substring(idx + 1).Replace("\"", "");
nr[RowColumns] = RowDataString;
}
catch (Exception ex)
{
continue;
}
}
dt.Rows.Add(nr);
}
return dt;
}
Код должен опустить в поле значения .. что я могу сделать
Почему бы не преобразовать json в объекты, а затем отредактировать свойство в объекте и после этого преобразовать его в datarow? – Tinwor
Если вы не можете сказать, как я могу это сделать .. На самом деле веб-служба wcf возвращает строку json в качестве вывода ... теперь я хочу изменить как таблицу – jai
, если бы я был вами, я бы посмотрел на http: //www.newtonsoft.com/json, это сэкономит вам много времени. Это упрощает преобразование вашего json в объекты и обратно :) –