C#数据集索引

C#数据集索引,c#,.net,indexing,dataset,C#,.net,Indexing,Dataset,我需要在一个数据集中查找具有多个列中某些值的记录。我无法使用Find或Contains方法,因为它们需要主键,并且我的搜索值可能是非唯一的。数据集是否有可以用来加速搜索的索引(很像SQL表)?现在,我正在循环数据集,对每一列进行比较,但是这种方法非常慢(我的数据集有600k行) 谢谢您可以使用DataTable Select方法,该方法允许您根据搜索条件进行搜索 DataRow[] myRows = ds.Tables[0].Select("intCol=0 OR stringCol='your

我需要在一个数据集中查找具有多个列中某些值的记录。我无法使用Find或Contains方法,因为它们需要主键,并且我的搜索值可能是非唯一的。数据集是否有可以用来加速搜索的索引(很像SQL表)?现在,我正在循环数据集,对每一列进行比较,但是这种方法非常慢(我的数据集有600k行)


谢谢

您可以使用DataTable Select方法,该方法允许您根据搜索条件进行搜索

DataRow[] myRows = ds.Tables[0].Select("intCol=0 OR stringCol='yourSearch'");

select命令确实有效,但对于我的数据集来说太慢了,所以我使用了数据视图(默认值)。如果对正在查询中搜索的任何列进行排序,则所花的时间只相当于Select方法的一小部分。