以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  GetType(String) 如何用变量传参数啊?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=137974)

--  作者:guosheng
--  发布时间:2019/7/19 14:13:00
--  GetType(String) 如何用变量传参数啊?
GetType(String)
如果用 Dim str1 as string="String"
GetType(str1)
此时传了个字串,报错了。
应用场景,数据类型保存在某个字典或数组中。谢谢
[此贴子已经被作者于2019/7/19 14:13:27编辑过]

--  作者:有点蓝
--  发布时间:2019/7/19 14:30:00
--  
没看懂,在什么地方使用,要做什么?完整代码举例
--  作者:guosheng
--  发布时间:2019/7/19 15:10:00
--  
比如建立一个临时表:
Dim dtb As New DataTableBuilder("明细表")
Dim json As String = "[[\'合同编号\',\'String\',\'50\'],[\'合同开始日期\',\'String\',\'50\']]"
Dim ja As JArray = Jarray.Parse(json)
For i As Integer = 0 To ja.Count - 1
Dim str As String="String"
    dtb.AddDef(ja(i)(0).ToString(), Gettype(String), ja(i)(2).ToString())
Next
dtb.Build()

如果直接将ja(i)(1).ToString() 传给Gettype就报错了
谢谢

--  作者:有点蓝
--  发布时间:2019/7/19 15:18:00
--  
没有办法使用,只能这样

select case ja(i)(1).ToString() 
 case "String"
dtb.AddDef(ja(i)(0).ToString(), Gettype(String), ja(i)(2).ToString())
case "Integer"
dtb.AddDef(ja(i)(0).ToString(), Gettype(Integer), ja(i)(2).ToString())