首先引用 解析類庫

解析類父類

示例
這裡 注意點 要傳json數組進來
[{
"鍵": [ { } ],
"鍵": [{ } ]
}]
要替換掉json內所有空格 Replace(" ","") ,Replace(Json, @"\r\n", "")
如果 json 鍵值對 傳進來的值中 含有 ',' 隔開的值 則 需用 其他符號 替代 否則 取值時 取不全!
public string ImportData(string Json)
{
StringBuilder sbStr = new StringBuilder();
CommonJsonModel model = new CommonJsonModel(Regex.Replace(Json, @"\r\n", ""));
List<CommonJsonModel> lst = model.GetCollection();
foreach (CommonJsonModel item in lst)
{
#region
string ImgList = item.GetValue("ImgList");
CommonJsonModel modelImgList = new CommonJsonModel(Regex.Replace(ImgList, @"\r\n", ""));
List<CommonJsonModel> lstImgList = modelImgList.GetCollection();
List<string> sqlDelImgList = new List<string>();
List<string> sqlInserImgList = new List<string>();
foreach (CommonJsonModel itemImgList in lstImgList)
{
string ID = itemImgList.GetValue("ID");//
if (ID != "0")
{
sqlDelImgList.Add(string.Format("DELETE FROM MR_Img WHERE AppID={0}",ID));
}
string Img = itemImgList.GetValue("Img");
string Describe = itemImgList.GetValue("Describe");
string sqlInsertImg = string.Format("INSERT INTO MR_Img([FilePathe],[Small_FilePathe],[Describe],[AppID]) VALUES('{0}','{1}','{2}',{3})", Img, Img, Describe, ID);
sqlInserImgList.Add(sqlInsertImg);
}
int ictDelImg = DBHelper.ExecuteSqlTran(sqlDelImgList);
//
int ictImg = DBHelper.ExecuteSqlTran(sqlInserImgList);
#endregion
#region
string ExamineItem = item.GetValue("ExamineItem");
CommonJsonModel modelExamineItem = new CommonJsonModel(Regex.Replace(ExamineItem, @"\r\n", ""));
List<CommonJsonModel> lstExamineItem = modelExamineItem.GetCollection();
List<string> sqlDelExamineItemList = new List<string>();
List<string> sqlInsExamineItemList = new List<string>();
foreach (CommonJsonModel itemExamineItem in lstExamineItem)
{
string ID = itemExamineItem.GetValue("ID");
if (ID != "0")
{
sqlDelExamineItemList.Add(string.Format("DELETE FROM MR_Check_Details where AppID={0}",ID));
}
string ExamineID = itemExamineItem.GetValue("ExamineID");
string FloorList = itemExamineItem.GetValue("FloorList");
string Danger = itemExamineItem.GetValue("Danger");
string Imgs = itemExamineItem.GetValue("Imgs");
string NewImgs = "";
if (Imgs != "" || Imgs != "0")
{
string imgids = Imgs.Replace("&",",");
string sqlQueryImgsID = string.Format("SELECT [ID] FROM MR_Img WHERE AppID IN({0})", imgids);
DataTable dtImgsID = DBHelper.ExecuteDataTable(sqlQueryImgsID, CommandType.Text);
if (dtImgsID != null && dtImgsID.Rows.Count > 0)
{
foreach (DataRow ImsIdRow in dtImgsID.Rows)
{
NewImgs = NewImgs + "," + ImsIdRow["ID"];
}
}
}
string Item_ID = itemExamineItem.GetValue("Item_ID");
string Remarks = itemExamineItem.GetValue("Remarks");
string Refuse = itemExamineItem.GetValue("Refuse");
string RefuseName = itemExamineItem.GetValue("RefuseName");
string sqlInsCheck_Details = string.Format("INSERT INTO MR_Check_Details ([Item_ID],[Danger],[Complete_Time],[Imgs],[Remarks],[Refuse],[RefuseName],[ExamID],[FloorList],[AppID]) VALUES({0},{1},getdate(),'{2}','{3}',{4},'{5}',{6},'{7}',{8})", Item_ID, Danger, NewImgs.Trim(','), Remarks, Refuse, RefuseName, ExamineID, FloorList, ID);
sqlInsExamineItemList.Add(sqlInsCheck_Details);
}
int ictdelExamineItemList = DBHelper.ExecuteSqlTran(sqlDelExamineItemList);
int ictExamineItemList = DBHelper.ExecuteSqlTran(sqlInsExamineItemList);
#endregion
#region
string BuildList = item.GetValue("BuildList");
CommonJsonModel modelBuildList = new CommonJsonModel(Regex.Replace(BuildList, @"\r\n", ""));
List<CommonJsonModel> lstBuildList = modelBuildList.GetCollection();
List<string> sqlUpBuidList = new List<string>();
foreach (CommonJsonModel itemBuildList in lstBuildList)
{
string ID = itemBuildList.GetValue("ID");
string Name = itemBuildList.GetValue("Name");
string Contact = itemBuildList.GetValue("Contact");
string Mobile = itemBuildList.GetValue("Mobile");
string OwnerName = itemBuildList.GetValue("OwnerName");
string OwnerMobile = itemBuildList.GetValue("OwnerMobile");
string User_ID = itemBuildList.GetValue("User_ID");
string Doorplate = itemBuildList.GetValue("Doorplate");
string Address = itemBuildList.GetValue("Address");
string FloorNum = itemBuildList.GetValue("FloorNum");
string UpBuild = string.Format("UPDATE MR_Building SET [Name] ='{0}',[Contact] = '{1}',[Mobile] = '{2}',[OwnerName] = '{3}',[OwnerMobile] = '{4}',[User_ID] = {5},[Doorplate] = '{6}',[Address] ='{7}',[FloorNum] ={8} WHERE ID={9}", Name, Contact, Mobile, OwnerName, OwnerMobile, User_ID, Doorplate, Address, FloorNum, ID);
sqlUpBuidList.Add(UpBuild);
}
int ictUpBuidList = DBHelper.ExecuteSqlTran(sqlUpBuidList);
#endregion
#region
int ictBuildExamine = 0;
string BuildExamine = item.GetValue("BuildExamine");
CommonJsonModel modelBuildExamine = new CommonJsonModel(Regex.Replace(BuildExamine, @"\r\n", ""));
List<CommonJsonModel> lstBuildExamine = modelBuildExamine.GetCollection();
foreach (CommonJsonModel itemBuildExamine in lstBuildExamine)
{
string ID = itemBuildExamine.GetValue("ID");
string BID = itemBuildExamine.GetValue("BID");
string NewDanger = "";
string Danger = itemBuildExamine.GetValue("Danger");
if (Danger != "" || Danger != "0")
{
string DangerIds = Danger.Replace("&", ",");
string sqlQBuidDanger = string.Format("SELECT ID FROM MR_Check_Details where AppID in ({0})", DangerIds);
DataTable dtBuildDanger = DBHelper.ExecuteDataTable(sqlQBuidDanger, CommandType.Text);
if (dtBuildDanger != null && dtBuildDanger.Rows.Count > 0)
{
foreach (DataRow BuildDangerRow in dtBuildDanger.Rows)
{
NewDanger = NewDanger + "," + BuildDangerRow["ID"];
}
}
}
string RemarkType = itemBuildExamine.GetValue("RemarkType");
string Remark = itemBuildExamine.GetValue("Remark");
string Remark2 = itemBuildExamine.GetValue("Remark2");
string Complete_Time = itemBuildExamine.GetValue("Complete_Time");
string UserID = itemBuildExamine.GetValue("UserID");
ictBuildExamine += LxAddCheckBuild(BID, NewDanger.Trim(','), Remark, Remark2, Complete_Time, UserID);
}
#endregion
#region
string StreetList = item.GetValue("StreetList");
CommonJsonModel modelStreetList = new CommonJsonModel(Regex.Replace(StreetList, @"\r\n", ""));
List<CommonJsonModel> lstStreetList = modelStreetList.GetCollection();
List<string> SqlUpSteetList = new List<string>();
foreach (CommonJsonModel itemStreetList in lstStreetList)
{
string ID = itemStreetList.GetValue("ID");
string Name = itemStreetList.GetValue("Name");
string Address = itemStreetList.GetValue("Address");
string Type = itemStreetList.GetValue("Type");
string Business = itemStreetList.GetValue("Business");
string Layer = itemStreetList.GetValue("Layer");
string Acreage = itemStreetList.GetValue("Acreage");
string Has_Business = itemStreetList.GetValue("Has_Business");
string Owner_Name = itemStreetList.GetValue("Owner_Name");
string Phone = itemStreetList.GetValue("Phone");
string Run_Name = itemStreetList.GetValue("Run_Name");
string Run_Phone = itemStreetList.GetValue("Run_Phone");
string Place_x = itemStreetList.GetValue("Place_x");
string place_y = itemStreetList.GetValue("place_y");
string UserID = itemStreetList.GetValue("UserID");
string Extinguisher_Num = itemStreetList.GetValue("Extinguisher_Num");
string Emergency_Num = itemStreetList.GetValue("Emergency_Num");
string Alertor_Num = itemStreetList.GetValue("Alertor_Num");
string UpSteet = string.Format("UPDATE MR_Street SET [Name] = '{0}',[Type] = {1},[Address] = '{2}',[Business] = '{3}' ,[Layer]='{4}',[Acreage] ={5},[Has_Business] ='{6}',[Owner_Name] = '{7}',[Phone] ='{8}',[Run_Name] = '{9}',[Run_Phone] = '{10}',[Place_x] = {11},[place_y] = '{12}',[UserID] = {13} WHERE Id={14}", Name, Type, Address, Business, Layer, Acreage, Has_Business, Owner_Name, Phone, Run_Name, Run_Phone, Place_x, place_y, UserID,ID);
SqlUpSteetList.Add(UpSteet);
string UpSteetDeal = string.Format("UPDATE MR_Street_Detail SET [Extinguisher_Num] = {0},[Emergency_Num] = {1} ,[Alertor_Num] ={2} WHERE SID={3}",Extinguisher_Num,Emergency_Num,Alertor_Num,ID);
SqlUpSteetList.Add(UpSteetDeal);
}
int ictUpSteetList=DBHelper.ExecuteSqlTran(SqlUpSteetList);
#endregion
#region
string StreetExamine = item.GetValue("StreetExamine");
CommonJsonModel modelStreetExamine = new CommonJsonModel(Regex.Replace(StreetExamine, @"\r\n", ""));
List<CommonJsonModel> lstStreetExamine = modelStreetExamine.GetCollection();
int ictStreetExamine = 0;
foreach (CommonJsonModel itemStreetExaminee in lstStreetExamine)
{
// string ID = itemStreetExaminee.GetValue("ID");
string SID = itemStreetExaminee.GetValue("SID");
string NewDanger = "";
string Danger = itemStreetExaminee.GetValue("Danger");
if (Danger != "" || Danger != "0")
{
string DangerIds = Danger.Replace("&", ",");
string sqlQStreetDanger = string.Format("SELECT ID FROM MR_Check_Details where AppID in ({0})", DangerIds);
DataTable dtStreetDanger = DBHelper.ExecuteDataTable(sqlQStreetDanger, CommandType.Text);
if (dtStreetDanger != null && dtStreetDanger.Rows.Count > 0)
{
foreach (DataRow StreetDangerRow in dtStreetDanger.Rows)
{
NewDanger = NewDanger + "," + StreetDangerRow["ID"];
}
}
}
string RemarkType = itemStreetExaminee.GetValue("RemarkType");
string Remark = itemStreetExaminee.GetValue("Remark");
string Remark2 = itemStreetExaminee.GetValue("Remark2");
string Complete_Time = itemStreetExaminee.GetValue("Complete_Time");
string UserID = itemStreetExaminee.GetValue("UserID");
ictStreetExamine+= LxAddCheckNew(SID, NewDanger.Trim(','), RemarkType, Remark, Remark2, Complete_Time, UserID);
}
#endregion
}
return "";
}