Tôi tham gia vào quá trình học tập C# và nó đang diễn ra tốt đẹp cho đến nay. Tuy nhiên tôi vừa mới đánh đầu tiên của tôi "nói gì?" chốc lát.DataTable, Cách điều kiện xóa các hàng
DataTable cung cấp truy cập hàng ngẫu nhiên vào bộ sưu tập hàng của nó, không chỉ thông qua hành vi thu thập điển hình, mà còn thông qua DataTable.Select. Tuy nhiên tôi dường như không thể liên kết khả năng này với DataRow.Delete. Cho đến nay đây là những gì nó có vẻ như tôi cần phải làm để có điều kiện xóa một hoặc nhiều hàng từ một bảng.
int max = someDataTable.Rows.Count - 1;
for(int i = max; i >= 0; --i)
{
if((int)someDataTable.Rows[i].ItemArray[0] == someValue)
{
someDataTable.Rows[i].BeginEdit();
someDataTable.Rows[i].Delete();
}
else
break;
}
someDataTable.AcceptChanges();
Nhưng tôi không hài lòng với mã này. Tôi không bị thuyết phục. Chắc chắn là tôi đang thiếu gì đó. Tôi có thực sự buộc phải nhấn vào bộ sưu tập Hàng tuần tự nếu tôi cần xóa một hoặc nhiều hàng có điều kiện không?
(không nhớ ngược cho. Tôi xóa từ ngày kết thúc của DataTable. Vì vậy, nó là ok)
Ah! Đã không xảy ra với tôi Chọn() sẽ trả về một tham chiếu đến các hàng có thể định. Tôi biết tôi đã phải mất một cái gì đó. Cảm ơn nhiều! –
Giải pháp quá tốt, điều này cũng giải quyết được vấn đề của tôi về datatable.select thay đổi thứ tự. – Signcodeindie
Giải pháp tuyệt vời Matthew – Ravia