Tôi đang sử dụng ADO.NET và C#, và tôi muốn chuyển đổi một đối tượng DataTable thành một mảng DataRows. Một cách thanh lịch để làm điều này là gì?ADO.NET: chuyển đổi một DataTable thành một mảng DataRows
10
A
Trả lời
19
Câu hỏi đầu tiên của tôi sẽ là lý do tại sao? Yêu cầu không có ý nghĩa.
Câu trả lời là:
DataRow[] rows = myDataTable.Select();
2
Trên thực tế các DataTable có một tài sản được gọi là Hàng, phù thủy cung cấp các phương pháp để làm điều này.
Bạn có thể thực hiện việc này:
List<System.Data.DataRow> r = d.Rows.AsQueryable().OfType<System.Data.DataRow>().ToList();
+0
Bình chọn lên cuz Tôi đang tìm kiếm cách "LINQ" ... Cảm ơn! –
1
DataTable.Select() cung cấp cho bạn một loạt các DataRows. Bạn có thể sử dụng như là một mảng
Dim dt As New DataTable
Dim dr() As DataRow = dt.Select()
Trong trường hợp bạn muốn một ArrayList, bạn có thể
public ArrayList ConvertDT(ref DataTable dt)
{
ArrayList converted = new ArrayList(dt.Rows.Count);
foreach (DataRow row in dt.Rows)
{
converted.Add(row);
}
return converted;
}
Tôi đã không được sử dụng các chức năng dt.rows.CopyTo. có lẽ nó cũng hoạt động.
0
Nếu bạn muốn xem nội dung như là một chuỗi, sử dụng mã này:
string.Join(",", dataTable.AsEnumerable().SelectMany(row => row.ItemArray))
Các vấn đề liên quan
- 1. chuyển đổi một mảng thành một cây
- 2. Làm cách nào để chuyển đổi một DataTable thành IDatareader?
- 3. Chuyển đổi một mảng 2D thành một mảng 1D
- 4. Chuyển đổi mảng mảng thành một mảng của chuỗi
- 5. Chuyển đổi chọn mới thành DataTable?
- 6. Cách chuyển đổi DataSet thành DataTable
- 7. Cách chuyển đổi IQueryable thành DataTable
- 8. Chuyển đổi một mảng chuỗi thành mảng byte
- 9. rpy2: Chuyển đổi một data.frame thành mảng có nhiều mảng
- 10. Chuyển đổi PHP mảng chuỗi thành một mảng
- 11. Chuyển đổi một Int thành một mảng BCD
- 12. Cách chuyển đổi một mảng thành một bộ trong Java
- 13. Chuyển đổi một chuỗi thành một mảng kí tự
- 14. Làm thế nào để chuyển đổi một DataTable/Số liệu thành một ObjectDataSource
- 15. Chuyển đổi một mảng byte thành một số thập phân thành một chuỗi
- 16. Chuyển đổi một mảng numpy 2D thành C++ ngắn **?
- 17. Chuyển đổi một mảng PHP thành các biến lớp
- 18. C#: Chuyển đổi mảng Byte thành một phao
- 19. F #: Chuyển đổi chuỗi thành một mảng byte
- 20. Cách chuyển đổi một phần của mảng char thành chuỗi
- 21. Làm thế nào để điền vào một DataTable với một danh sách (Of t) hoặc chuyển đổi một danh sách (Of t) thành một DataTable?
- 22. Chuyển đổi IEnumerable sang DataTable
- 23. Chuyển đổi mảng Ruby của bộ thành một băm cho một mảng các khóa?
- 24. Làm thế nào để chuyển đổi một mảng kết quả ActiveRecord thành một mảng bình thường?
- 25. Làm thế nào để chuyển đổi một mảng các chuỗi thành một mảng float trong numpy?
- 26. Làm thế nào để chuyển đổi một mảng byte thành một mảng int?
- 27. Chuyển đổi DataTable thành tệp XML và ngược lại
- 28. chuyển đổi mảng chuỗi thành mảng byte
- 29. Chuyển đổi mảng int thành mảng char
- 30. Chuyển đổi các danh sách đối tượng khác nhau thành một DataTable sử dụng FastMember
này dường như không sao chép bất kỳ hàng với RowState == DataRowState.Deleted – Alex
@ Alex: Đó là bởi vì liên tiếp với trạng thái 'Đã xóa' không còn được coi là một phần của bảng. Nếu bạn muốn xác minh, hãy so sánh '.Select()' với 'table.Rows.Count'. Bạn sẽ thấy chúng giống hệt nhau. –
BẠN ĐANG TUYỆT VỜI! –