2013-11-25 102 views
0

我有一個自動增量列的數據表。我想刪除除自動增量列以外的所有列中包含空值或空白值的行。如何從數據表中刪除空數據行,除了自動增量列

var dr = TempRowToSelectionDT.Rows.Cast<DataRow>().Where(row => !row.ItemArray.All(field => field is System.DBNull || string.Compare((field as string).Trim(), string.Empty) == 0)).ToArray(); 

TempRowToSelectionDT是我的數據表。我無法刪除該數據表中的空行。因爲我無法在itemarray中過濾列,並且自動增量列始終具有值。所以我想刪除那個數據表中包含空值的行,除了自動增量列以外的所有單元格中。

回答

1

試試這個,如果有用的話投我一票。

Dim dtSociete As New DataTable 
     dtSociete.Columns.Add("EmpID") 
     dtSociete.Columns.Add("EmpFName") 
     dtSociete.Columns.Add("EmpLName") 
     dtSociete.Rows.Add("1", "Faraz", "Ahmed") 
     dtSociete.Rows.Add("2", "Saad", "Aslam") 
     dtSociete.Rows.Add("3", "", "") 
     dtSociete.Rows.Add("4", "", "") 
     dtSociete = dtSociete.AsEnumerable().Where(Function(r) r.Field(Of String)("EmpName") <> "" And r.Field(Of String)("Descrip") <> "").CopyToDataTable()