以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  生成json数据时,如何处理逻辑字段  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=175713)

--  作者:rogen
--  发布时间:2022/3/16 10:15:00
--  生成json数据时,如何处理逻辑字段
生成json时,要用Tostring来转成字符型,若是逻辑字段,用Tostring就变成字符True/False了,
返回前端后,对于checkbox就不能直接用checked属性绑定对应字段了

Dim ygarr As new JArray
Dim drs As List(of DataRow) = dt.Select(True)
For i As Integer = 0 To drs.Count -1
    ygarr.add(new JObject)
    ygarr(i)("kind") = drs(i)("类别").Tostring
    ygarr(i)("prono") = drs(i)("编号").Tostring
    ygarr(i)("price") = drs(i)("销售价").Tostring
    ygarr(i)("count") = drs(i)("数量").Tostring
    ygarr(i)("checked") = drs(i)("选中").Tostring
next

例如上面代码,选中是个逻辑字段,应该怎么处理,才能转为json时也是个逻辑的true/false值?

--  作者:有点蓝
--  发布时间:2022/3/16 10:31:00
--  
参考:http://www.foxtable.com/webhelp/topics/1513.htm

不要一刀切,什么都tostring,根据实际类型进行转换

    ygarr(i)("count") = cint(drs(i)("数量"))
    ygarr(i)("checked") = CBool (drs(i)("选中"))