如何拆分/解析JSON数据并将其保存到SQL Server?

时间:2019-01-07 08:34:35

标签: c# json sql-server asp.net-mvc split

我有一个MVC控制器来接收从WinForms应用程序发送的JSON数据。如何拆分JSON字符串并将其存储到SQL Server中?

这是我的控制器,用于接收和反序列化json对象:

Stream req = Request.InputStream;
req.Seek(0,System.IO.SeekOrigin.Begin);
string json = new StreamReader(req).ReadToEnd();
hl7View hl = null;
hl = JsonConvert.DeserializeObject<hl7View>(json);
//hl do have a string data like this
//"{\"data\":[{\"LOC\":\"TEST\",\"COMPANY\":\"BST\",\"MSG_ID\":\"20160701123200-112\",\"NS\":\"\",\"ROOM\":\"\",\"BED\":\"\",\"SID\":\"25444444\",\"OBS_SEQ\":\"1\",\"OBS_TIME\":\"20160701164801\",\"SEQ\":\"1\",\"ITEM\":\"8867-4\",\"ITEMLAB\":\"Heart Rate\",\"RESULT\":\"80\",\"UNIT\":\"Beats/min\",\"FLAG\":null,\"CLI_INFO\":null,\"OPID\":\"150710\"}],\"sMSG\":null}"
//what should i do here?

如何拆分字符串并将其存储到SQL Server中?

这是hl7View类的代码:

public class hl7View
{
  public string sMSG {get;set;}
  public List<dataDB> Datalist {get;set;}
}

database I've created.

我尝试手动插入数据,并且工作正常。是否有可能在反序列化之后将其拆分然后存储到数据库中?

1 个答案:

答案 0 :(得分:0)

我认为您应该基于创建的实体框架将dataDB列表对象直接添加到sql db。 使用已经存在的dataDB的列表对象设置foreach循环。 dbcontext.tablename.add(item)//项目是dataDB的foreach循环对象。 类似于下面的代码。 foreach (var mapping in mappings) { mapping.UserId = UserCommitteeMappingIDWiseUserID[mapping.UserCommitteeMappingID]; mapping.ModifiedBy = ModifiedBy; mapping.ModifiedDate = DateTime.Now; context.UserCommitteeMappings.AddObject(mapping); }