简体   繁体   English

如何从数据表中删除空数据行(自动增量列除外)

[英]How to remove null datarow from datatable except Autoincrement column

I have a datatable with one autoincrement column. 我有一个带有一个自动增量列的数据表。 And I want to remove the row which contain null or white space values in all columns except autoincrement column. 我想删除除自动增量列以外的所有列中包含空值或空格值的行。

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 is my datatable. TempRowToSelectionDT是我的数据表。 I cannot remove the null rows in that datatable. 我无法删除该数据表中的空行。 Because I cannot filter column in itemarray and autoincrement column always has values. 因为我无法过滤itemarray中的列,并且autoincrement列始终具有值。 So I want to remove the rows in that datatable which contains null values in all cells except autoincrement column 所以我想删除该数据表中的行,该表在除autoincrement列之外的所有单元格中都包含空值

Try this. 尝试这个。

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()

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM