Foxtable(狐表)用户栏目专家坐堂 → 概念的问题


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

主题:概念的问题

美女呀,离线,留言给我吧!
狐狐妞
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:幼狐 帖子:72 积分:727 威望:0 精华:0 注册:2020/12/11 17:25:00
概念的问题  发帖心情 Post By:2021/2/19 20:25:00 [只看该作者]

基础性的知识有点混淆了:

Dim drs As List(of DataRow)
drs = DataTables("总表").Select("[行状态] = '锁定'") 
If drs IsNot Nothing Then
    For Each dr As DataRow In drs
        dr.Locked = True
    Next
End If
‘’-------------------------------

在这里是判断DRS集合里有没有这一行, 那么   if drs isnot nothing 和 if drs.count >0 在运行中他们的区别在哪里?               



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


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

如果要在其它地方使用集合就是2楼说的。

但是如果放到select返回值,不需要做任何判断,因为select返回的不可能是空值,而如果没有返回结果就是drs.count=0,这时For Each 是不会执行的,所以直接这样即可

Dim drs As List(of DataRow)
drs = DataTables("总表").Select("[行状态] = '锁定'") 
    For Each dr As DataRow In drs
        dr.Locked = True
    Next

其实更简单的用法是
DataTables("总表").replacefor("_Locked",true,"[行状态] = '锁定'") 

 回到顶部