无法使用VB.NET VS2005中的DefaultView.ToTable从数据表中获取不同的记录。

时间:2012-03-14 14:13:04

标签: vb.net visual-studio-2005 datatable

我正在VB.NET中构建自定义搜索控件,遇到了将不同记录导入我的datagridview的问题。

我想首先返回完全匹配,所以我在同一个表上运行2个相同的查询,但略有不同:

select ... like "code%"
select ... like "%code%"

我有一个数据表,我需要从中获取不同的记录;我将sql查询中的记录附加到数据表的末尾,所以我不能在sql中使用union来返回数据集(我想保留添加行的顺序)

我一直在使用它,它适用于2个领域:

dt2 = dt.DefaultView.ToTable(True, "Code", "Name")

但是当我有3个(或更多)字段时,我只会为我要查询的行重复:

dt2 = dt.DefaultView.ToTable(True, "Code", "Name", "Initial")

select ... like "initial%"
select ... like "%intial%"

我在重建之前清除了datagridview.source。

有没有办法以这种方式获取不同的行,或者我应该自己构建一些东西,以便在将它们附加到新表之前从第二个数据表中删除重复项?

1 个答案:

答案 0 :(得分:0)

我相信datatable.DefaultView.ToTable中存在一个错误或限制,因为我将其缩小到具有两列以上的数据表。