[VB.NET] JSON的產生與讀取匯入

不詳細介紹JSON是什麼東東啦,反正就是一種資料交換或是傳遞的格式,還挺方便使用的唷。

範例大概狀況是這樣,我有兩個Table是一對多的狀況,就是一個訂單底下有很多Item項目,

主要任務就想把這兩個Table的資料產生成JSON的格式。

前置作業

Imports Newtonsoft.Json
Imports Newtonsoft.Json.Linq
這兩個要用的先Imports進來。
  1. 先建立Data Object
01 Public Class JsonDO
02
03 Private A As Integer = 0
04 Private B As String = ""
05 Private C As Integer = 0
06
07 Private item As Object
08
09
10 Public Property pA() As Integer
11 Get
12 Return A
13 End Get
14 Set(ByVal value As Integer)
15 A= value
16 End Set
17 End Property
18
19 Public Property pB() As String
20 Get
21 Return B
22 End Get
23 Set(ByVal value As String)
24 B= value
25 End Set
26 End Property
27
28 Public Property pC() As Integer
29 Get
30 Return C
31 End Get
32 Set(ByVal value As Integer)
33 C= value
34 End Set
35 End Property
36
37 Public Property pItem() As Object
38 Get
39 Return item
40 End Get
41 Set(ByVal value As Object)
42 item = value
43 End Set
44 End Property
45
46
47 End Class

2.把資料撈出來後塞進JsonDO,然後就可以產生JSON囉

1 Dim Jstring As String
2 Dim Jrecord As New JsonDO
3
4 '省略把資料塞進DO的Code唷~
5
6 '這段就是產生JSON的
7 Jstring = JsonConvert.SerializeObject(Jrecord)

3.抓取JSON中的值匯入

01 '因為是範例所以還是先產生JSON字串,等等才可以讀取。
02 Dim ImportJson As JObject
03 ImportJson = JsonConvert.DeserializeObject(Of JObject)(Jstring)
04
05 '這段意思就是我要讀取主檔資料表中Item欄位資料
06 Dim JsonOB As Object
07 JsonOB = ImportJson .Item("pItem")
08
09 '如果要讀取第二層Item欄位中的細項可以這樣寫,那個 i 要給迴圈用的。
10 JsonOB = ImportJson .Item("pItem").ElementAt(i).Item("pautoid")
11
12 '大致寫法就是這樣,有些Code有省略,請見諒^^。

產生出來的JSON可以到這裡去看唷 http://jsonviewer.stack.hu/

依我這個Demo的範例產生出來就是這樣。

因為要跟對方交換資料,所以就試了一下,對方給我的資料只要是照著我的DO那樣去產生的話,

這樣我就可以直接塞進去資料庫了^^,有不完善的地方還請大家多多指教。

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...