循环遍历一个DataTable中的记录并在vb.net中填充另一个DataTable

时间:2011-08-10 16:35:44

标签: asp.net vb.net datatable

我有一个asp.net应用程序,我有一个数据表(“DataTableA”)只返回一列(“ProductID”)。

我想阅读“ProductID”的每一行,处理一些业务逻辑,然后将这些列(ProductID和ProductIDBusinessLogicValue)复制到DataTableB。然后,此DataTableB将显示在asp.net页面上。

读取DataTableA每一行的最佳方法是什么?

由于

2 个答案:

答案 0 :(得分:2)

您可以将DataTableA复制到DataTableB,添加列并在每一行上执行业务逻辑,如下所示:

  DataTable dataTableB = dataTableA.Copy();
  dataTableB.Columns.Add("ProcessedValue", typeof(string));

  foreach (DataRow rw in dataTableB.Rows)
  {
    rw.SetField<string>("ProcessedValue", BusinessLogic(rw.Field<int>("ProductID")));
  }

答案 1 :(得分:1)

这是你可能喜欢的另一种方法(linq)

Dim table1 As DataTable = ds.Tables("DataTableA")    
Dim query = From product In table1.AsEnumerable() Select ProductID, myCalculatedField    
Dim table2 As DataTable = query.CopyToDataTable()

More Info...