在Vb.Net中过滤和合并数据集

时间:2014-12-27 18:37:40

标签: vb.net visual-studio-2010 dataset

我正在研究VS 2010 - Vb.Net,对Filter& amp;合并数据集

我的数据集 - ds有23个表。其中,我需要使用某些标准过滤一个表。

tempDs.Merge(ds.Tables("p_tree_categories").Select( "GROUP_CODE <> 'PA.43.948'"))

编写合并语法时,

我只能在tempD中看到选中的表:p_tree_categories。我们需要剩余的22个表以及p_tree_categories的过滤记录。

我怎样才能实现这个目标?

1 个答案:

答案 0 :(得分:1)

听起来你只想要过滤的表p_tree_categories行。在这种情况下,我会:

  1. 生成p_tree_categories的副本,其中只包含您感兴趣的行。
  2. p_tree_categories
  3. 中删除现有的tempDs
  4. 将副本合并为tempDs p_tree_categories
  5. 这些步骤可以实现如下:

    Dim originalTable As DataTable = tempDs.Tables("p_tree_categories")
    
    Dim filterView As DataView = New DataView(originalTable)
    filterView.RowFilter = "GROUP_CODE <> 'PA.43.948'"
    
    Dim filteredTable As DataTable = filterView.ToTable
    filteredTable.TableName = "p_tree_categories"
    
    ' Remove old, add the new.
    tempDs.Tables.Remove(originalTable)
    tempDs.Tables.Add(filteredTable)