【发布时间】:2018-03-23 11:01:12
【问题描述】:
通过 REST 我使用并反序列化一个 Json 文件(这里我使用的是 VB,但 C# 解决方案也可以)
Dim allDATA As List(Of GeneralInfo) = JsonConvert.DeserializeObject(Of List(Of GeneralInfo))(jstr)
并将其存储在一个对象中
Public Class FullData
Public Property userRunID As ULong
Public Property data As List(Of String)
End Class
Public Class GeneralInfo
Public Property id As ULong
Public Property name As String
Public Property data As List(Of FullData)
End Class
在调试模式下,我可以单击对象并查看所有数据。现在我想将数据存储在数据库中。为此,我在 FullData 上创建了两个带有额外 GeneralInfoId col 的表来提供关系。用这段代码我想写数据
Private Shared Sub AddData(ByRef myGDI As GeneralInfo)
...
Using command As SqlCommand = New SqlCommand("INSERT INTO GeneralInfo VALUES(@id, @name)", con)
command.Parameters.Add(New SqlParameter("id", myGDI.id))
command.Parameters.Add(New SqlParameter("name", myGDI.name))
command.ExecuteNonQuery()
End Using
Using command As SqlCommand = New SqlCommand("INSERT INTO FullData VALUES(@GeneralInfoID, @userRunID, @data)", con)
command.Parameters.Add(New SqlParameter("GeneralInfoID", myGDI.id))
command.Parameters.Add(New SqlParameter("userRunID", myGDI.))
command.Parameters.Add(New SqlParameter("data", myGDI.))
command.ExecuteNonQuery()
End Using
...
End Sub
如您所见,我不知道如何访问 FullData 对象的 (myGDI.???) 数据。有谁能帮帮我吗?
编辑:
我在 json 文件中获取公司所有参与者的调查数据。 generalinfo 对象包含有关公司的数据(ID、名称(公司))data 属性包含参与者的数据列表,例如他们的个人 ID (userRunID) 和他们的问卷 data,例如姓名, 以及每个问题的结果 (Simon;Garfunkel;1;2;3;5;5;4;4;...)。
我想将这些数据写入数据库。 (首先)可以将 Fulldata.data 中的数据作为字符串保存在数据库中。
【问题讨论】:
-
这是我以后要处理的另一个问题,因为数据只是用分号分隔的一堆数据。
-
myGDI类型为GeneralInfo不具有userRunID的属性,而是具有FullData对象的列表,每个 其中具有该属性。您需要在此处详细说明您要完成的工作。 -
我添加了一个解释。
-
将对象存储到表是像实体框架这样的 ORM 的工作