Foxtable(狐表)用户栏目专家坐堂 → [求助]按权限生成3级菜单输出JSON


  共有2353人关注过本帖树形打印复制链接

主题:[求助]按权限生成3级菜单输出JSON

帅哥哟,离线,有人找我吗?
ymjr2011
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:544 积分:7290 威望:0 精华:0 注册:2011/6/22 20:16:00
[求助]按权限生成3级菜单输出JSON  发帖心情 Post By:2020/2/20 17:46:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目json.rar


内附需求的JSON格式及图示
[此贴子已经被作者于2020/2/21 11:28:43编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
ymjr2011
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:544 积分:7290 威望:0 精华:0 注册:2011/6/22 20:16:00
  发帖心情 Post By:2020/2/20 20:04:00 [只看该作者]

版主帮忙看看

 回到顶部
帅哥哟,离线,有人找我吗?
ymjr2011
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:544 积分:7290 威望:0 精华:0 注册:2011/6/22 20:16:00
  发帖心情 Post By:2020/2/21 8:14:00 [只看该作者]

来个大虾看看

 回到顶部
帅哥哟,离线,有人找我吗?
xndd
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:518 积分:4336 威望:0 精华:0 注册:2014/11/26 15:23:00
  发帖心情 Post By:2020/2/21 8:42:00 [只看该作者]

 

示例三

生成包括嵌套对象的JSON。

在命令窗口执行:

Dim jo As New JObject
jo
("name") = "李云龙"
jo
("age") = "36"
jo
("card") = New JObject
jo
("card")("bank") = "工行"
jo
("card")("account") = "12345678"
Output
.Show(jo.ToString)

显示的结果为:

{
  "name": "
李云龙",
  "age": "36",
  "card": {
    "bank": "
工行
",
    "account": "12345678"
  }
}


 回到顶部
帅哥哟,离线,有人找我吗?
ymjr2011
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:544 积分:7290 威望:0 精华:0 注册:2011/6/22 20:16:00
  发帖心情 Post By:2020/2/21 9:01:00 [只看该作者]

这也我知道,只是后面的代码写了好多都不对

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107669 积分:547660 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/21 9:05:00 [只看该作者]

For Each s As String In DataTables("menu").GetValues("menu0","","id")
    For Each s1 As String In DataTables("menu").GetValues("menu1","menu0='" & s & "'","id")
        Dim dr As DataRow = DataTables("menu").Find("menu0='" & s & "' and menu1='" & s1 & "'")
        jo("menuInfo")(s) = New JObject
        ja = new JArray
        jo("menuInfo")(s)("title") = s1
        jo("menuInfo")(s)("icon") = cstr(dr("icon0"))
        ja1 = new JArray
        For Each s2 As String() In DataTables("menu").GetValues("menu2|icon2|target","menu0='" & s & "' and menu1='" & s1 & "'")
            jo1 = New JObject
            jo1("title") = s2(0)
            jo1("href") = ""
            jo1("icon") = s2(1)
            jo1("target") = s2(2)
            ja2 = new JArray
            For Each s3 As String() In DataTables("menu").GetValues("menu3|href|icon3|target","menu0='" & s & "' and menu1='" & s1 & "' and menu2 = '" & s2(0) & "'")
                jo2 = New JObject
                jo2("title") = s3(0)
                jo2("href") = s3(1)
                jo2("icon") = s3(2)
                jo2("target") = s3(3)
                ja2.add(jo2)
            Next
            jo1("child") = ja2
            ja.add(jo1)
        Next
    Next
    jo("menuInfo")(s)("child") = ja
Next

 回到顶部
帅哥哟,离线,有人找我吗?
ymjr2011
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:二尾狐 帖子:544 积分:7290 威望:0 精华:0 注册:2011/6/22 20:16:00
  发帖心情 Post By:2020/2/21 9:16:00 [只看该作者]

---------------------------
版本:2019.10.26.1
---------------------------
代码执行出错,错误信息:



System.NullReferenceException: 未将对象引用设置到对象的实例。

   在 UserCode.Test()
---------------------------
确定   
---------------------------


 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107669 积分:547660 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/2/21 9:23:00 [只看该作者]

我测试没有问题,放到1楼的项目里测试。如果是其它项目,或者不同的数据,自己调试一下:调试技巧:http://www.foxtable.com/webhelp/scr/1485.htm

 回到顶部