Foxtable(狐表)用户栏目专家坐堂 → 表类转换报错问题


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

主题:表类转换报错问题

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


加好友 发短信
等级:六尾狐 帖子:1360 积分:9034 威望:0 精华:0 注册:2020/11/4 22:15:00
表类转换报错问题  发帖心情 Post By:2023/8/19 9:38:00 [只看该作者]



If dt.DataRows.Count = 0 Then
    Messagebox.show("此用户不存在!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information)
    Return
End If
dr = DataTables("yhtb").DataRows(0)

If e.Form.Controls("PassWord").Value = dr("Password") Then
    _UserName = UserName '
    e.Form.Close
Else
    Messagebox.show("密码错误!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information)
End If



代码执行,报错下面提示,如何解决?
详细错误信息:
无法将类型为“System.Data.DataTable”的对象强制转换为类型“Foxtable.DataTable”。

 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110744 积分:563646 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/8/19 9:41:00 [只看该作者]

如果要使用第三方的组件返回的System.Data.DataTable,这个和Foxtable的datatable不是一回事,不能按照Foxtable的datatable的用法使用的,要去看微软的帮助:https://learn.microsoft.com/zh-cn/dotnet/api/system.data.datatable?view=netframework-4.0&redirectedfrom=MSDN

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


加好友 发短信
等级:六尾狐 帖子:1360 积分:9034 威望:0 精华:0 注册:2020/11/4 22:15:00
  发帖心情 Post By:2023/8/19 9:42:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:mysql.jpg
图片点击可在新窗口打开查看


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


加好友 发短信
等级:六尾狐 帖子:1360 积分:9034 威望:0 精华:0 注册:2020/11/4 22:15:00
  发帖心情 Post By:2023/8/19 9:43:00 [只看该作者]

出错可能是红代码

 回到顶部
帅哥,在线噢!
有点蓝
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110744 积分:563646 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/8/19 9:44:00 [只看该作者]

要写全命名空间,因为不是Foxtable的datarow和datatable

dim dr as 
System.Data.datarow
……
dim dt as System.Data.datatable = db.executedataset(sql).tables(0)

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


加好友 发短信
等级:六尾狐 帖子:1360 积分:9034 威望:0 精华:0 注册:2020/11/4 22:15:00
  发帖心情 Post By:2023/8/19 10:16:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:sql报错-1.jpg
图片点击可在新窗口打开查看

dim dr as System.Data.datarow

Dim dt As System.Data.DataTable = db.executedataset(sqKl).Tables(0)

If dt.System.DataRows.Count = 0 Then
'If dt.DataRows.Count = 0 Then
    Messagebox.show("此用户不存在!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information)
    Return
End If

改后,蓝代码报错

 回到顶部
帅哥,在线噢!
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110744 积分:563646 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2023/8/19 10:32:00 [只看该作者]

https://learn.microsoft.com/zh-cn/dotnet/api/system.data.datatable.rows?view=netframework-4.0

If dt.Rows.Count = 0 Then

 回到顶部