嘿所有我有输出下面的下面的SQL查询:SQL数据定制JSON.net结构
ID | Name | theRole | THrs | Mon |....| trainH1 | train58 | train52 | train05 |etc...
===========================================================================================
152 | BOB M. | Admin | 40 | 1-9pm |....| 168dGrc0 | 89220E | 2FDEx56 | 5569CCz |......
理想我想的结构是这样的[注:下面附加的表名]:
{
"scheduleName": "",
"firstName": "",
"lastName": "",
"theRole": "",
"linker": "",
"Schedule": {
"ID": "",
"totalHrs": "",
"Mon": "",
"Tue": "",
"Wed": "",
"Thu": "",
"Fri": "",
"Sat": ""
},
"empInfo": {
"ID": "",
"Email": "",
"Phone": "",
"Active": "",
"Img": "",
"Badge": ""
},
"availability": {
"ID": "",
"Mon": "",
"Tue": "",
"Wed": "",
"Thu": "",
"Fri": "",
"Sat": ""
},
"training": {
"?": "?"
}
}
的火车就是我遇到的问题。这些来自数据库的值可以在任何给定的时间更改名称或者添加或删除。目前我有大约35个值。因此,我无法硬编码这些价值观我类功能内,我可以ID,名称,theRole,THRS等做...
的VB。净类定义看起来像这样到目前为止:
Public Class Schedule
Private m_ID As String
Private m_totalHrs As String
Private m_Mon As String
Private m_Tue As String
Private m_Wed As String
Private m_Thu As String
Private m_Fri As String
Private m_Sat As String
Public Property ID() As String
Get
Return m_ID
End Get
Set
m_ID = Value
End Set
End Property
Public Property totalHrs() As String
Get
Return m_totalHrs
End Get
Set
m_totalHrs = Value
End Set
End Property
Public Property Mon() As String
Get
Return m_Mon
End Get
Set
m_Mon = Value
End Set
End Property
Public Property Tue() As String
Get
Return m_Tue
End Get
Set
m_Tue = Value
End Set
End Property
Public Property Wed() As String
Get
Return m_Wed
End Get
Set
m_Wed = Value
End Set
End Property
Public Property Thu() As String
Get
Return m_Thu
End Get
Set
m_Thu = Value
End Set
End Property
Public Property Fri() As String
Get
Return m_Fri
End Get
Set
m_Fri = Value
End Set
End Property
Public Property Sat() As String
Get
Return m_Sat
End Get
Set
m_Sat = Value
End Set
End Property
End Class
Public Class EmpInfo
Private m_ID As String
Private m_Email As String
Private m_Phone As String
Private m_Active As String
Private m_Img As String
Private m_Badge As String
Public Property ID() As String
Get
Return m_ID
End Get
Set
m_ID = Value
End Set
End Property
Public Property Email() As String
Get
Return m_Email
End Get
Set
m_Email = Value
End Set
End Property
Public Property Phone() As String
Get
Return m_Phone
End Get
Set
m_Phone = Value
End Set
End Property
Public Property Active() As String
Get
Return m_Active
End Get
Set
m_Active = Value
End Set
End Property
Public Property Img() As String
Get
Return m_Img
End Get
Set
m_Img = Value
End Set
End Property
Public Property Badge() As String
Get
Return m_Badge
End Get
Set
m_Badge = Value
End Set
End Property
End Class
Public Class Availability
Private m_ID As String
Private m_Mon As String
Private m_Tue As String
Private m_Wed As String
Private m_Thu As String
Private m_Fri As String
Private m_Sat As String
Public Property ID() As String
Get
Return m_ID
End Get
Set
m_ID = Value
End Set
End Property
Public Property Mon() As String
Get
Return m_Mon
End Get
Set
m_Mon = Value
End Set
End Property
Public Property Tue() As String
Get
Return m_Tue
End Get
Set
m_Tue = Value
End Set
End Property
Public Property Wed() As String
Get
Return m_Wed
End Get
Set
m_Wed = Value
End Set
End Property
Public Property Thu() As String
Get
Return m_Thu
End Get
Set
m_Thu = Value
End Set
End Property
Public Property Fri() As String
Get
Return m_Fri
End Get
Set
m_Fri = Value
End Set
End Property
Public Property Sat() As String
Get
Return m_Sat
End Get
Set
m_Sat = Value
End Set
End Property
End Class
Public Class Training
Private m_something1 As String
Private m_something2 As String
Private m_something3 As String
Public Property something1() As String
Get
Return m_something1
End Get
Set
m_something1 = Value
End Set
End Property
Public Property something2() As String
Get
Return m_something2
End Get
Set
m_something2 = Value
End Set
End Property
Public Property something3() As String
Get
Return m_something3
End Get
Set
m_something3 = Value
End Set
End Property
End Class
Public Class RootObject
Private m_scheduleName As String
Private m_firstName As String
Private m_lastName As String
Private m_theRole As String
Private m_linker As String
Private m_Schedule As Schedule
Private m_empInfo As EmpInfo
Private m_availability As Availability
Private m_training As Training
Public Property scheduleName() As String
Get
Return m_scheduleName
End Get
Set
m_scheduleName = Value
End Set
End Property
Public Property firstName() As String
Get
Return m_firstName
End Get
Set
m_firstName = Value
End Set
End Property
Public Property lastName() As String
Get
Return m_lastName
End Get
Set
m_lastName = Value
End Set
End Property
Public Property theRole() As String
Get
Return m_theRole
End Get
Set
m_theRole = Value
End Set
End Property
Public Property linker() As String
Get
Return m_linker
End Get
Set
m_linker = Value
End Set
End Property
Public Property Schedule() As Schedule
Get
Return m_Schedule
End Get
Set
m_Schedule = Value
End Set
End Property
Public Property empInfo() As EmpInfo
Get
Return m_empInfo
End Get
Set
m_empInfo = Value
End Set
End Property
Public Property availability() As Availability
Get
Return m_availability
End Get
Set
m_availability = Value
End Set
End Property
Public Property training() As Training
Get
Return m_training
End Get
Set
m_training = Value
End Set
End Property
End Class
我怎么能当我不知道数据名称是什么时,为json.net序列化创建一个结构?我正在考虑一种类型的列表(字符串)甚至字典(字符串,字符串)但仍然不确定如何去添加这些类,并使用这些值的SQL数据填充它。
所以这是我问:
(1)我怎样才能获得阶级结构接受SQL列名和值的时候,我不知道这些表的名称是什么? (2)能够形成json结构,因为我想从类函数中获取数据。
如何你现在在读的SQL数据为你做知道的名字其他值? –
只需使用常规的SQLReader循环。 – StealthRT