以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 用SQLSelect出来的DataRow不能查找父行 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=91865) |
-- 作者:affixed -- 发布时间:2016/10/20 15:48:00 -- 用SQLSelect出来的DataRow不能查找父行 进行一下操作,发现一只提示“未将对象引用设置到对象的实例。” 关联表子表中我用SQLSelect得到了一个DataRow集合,然后用For Each来遍历这个集合中每个DataRow的ParentRow。 运行到这行GetParentRow代码时就报错。 Dim drsArrivalList As new List(of DataRow) drsArrivalList = DataTables("TB_ArrivalList").SQLSelect("P And State <> \'已开票\'") For Each drArrivalList As DataRow In drsArrivalList If drsArrivalList.Count > 0 Then <----- 执行到这里都是没问题的,监视到Count的数值正常 MessageBox.Show(drArrivalList.GetParentRow("TB_Arrival")("SupplierCompanyName")) <----- 用MessageBox来抓错,发现问题就在这里 End If Next 请各位老师指点。谢谢! |
-- 作者:有点蓝 -- 发布时间:2016/10/20 15:57:00 -- SQLSelect出来的是独立的datarow,跟原表没有关系,不会有GetParentRow的值 用Select,要么就通过关联字段去查询父表的值
|
-- 作者:狐狸爸爸 -- 发布时间:2016/10/20 15:58:00 -- SqlFind出来的表,并不存在于DataTable中,关联对他无效。 请用find根据关联列找出父表行: |