参考
Dim dt As DataTable = Nothing
Dim cmd As New SQLCommand
Dim Arys As List(Of String())
cmd.CommandText = "Select top 10 * from {系统授权}"
dt = cmd.ExecuteReader
Dim jo As New JObject
Dim ja As New JArray
jo("menus") = ja
Dim i As Integer = 0
For Each zcd As String In dt.GetValues("主菜单")
Dim dr As DataRow = dt.find("主菜单='" & zcd & "'")
ja.Add(New JObject) '给数组添加两个对象成员
ja(i)("menuid") = i.Tostring
ja(i)("menuname") = zcd
ja(i)("icon") = cstr(dr("icon"))
Dim jja As new JArray
ja(i)("menus") = jja
Dim j As Integer = 0
For Each mkmc As String In dt.GetValues("模块名称", "主菜单='" & zcd & "'")
Dim cdr As DataRow = dt.find("主菜单='" & zcd & "' and 模块名称 = '" & mkmc & "'")
jja.Add(New JObject)
jja(j)("menuid") = j.Tostring
jja(j)("menuname") = mkmc
jja(j)("icon") = cstr(cdr("icon"))
jja(j)("url") = cstr(cdr("url"))
j += 1
Next
i += 1
Next
Output.Show(jo.ToString)