Używam ADO.NET i C#, i chcę przekonwertować obiekt DataTable do tablicy DataRows. Jaki jest elegancki sposób robienia tego?ADO.NET: przekonwertuj DataTable na tablicę DataRows
10
A
Odpowiedz
19
Moje pierwsze pytanie brzmi: dlaczego? Żądanie nie ma sensu.
Odpowiedź brzmi:
DataRow[] rows = myDataTable.Select();
2
Właściwie DataTable ma właściwość o nazwie Wiersze, czarownica zapewnia sposoby, aby to zrobić.
Można wykonać to robi:
List<System.Data.DataRow> r = d.Rows.AsQueryable().OfType<System.Data.DataRow>().ToList();
+0
Głosowałem bo szukałem drogi "LINQ" ... Dzięki! –
1
DataTable.Select() daje tablicę wierszy DataRows. Można to wykorzystać jako tablicę
Dim dt As New DataTable
Dim dr() As DataRow = dt.Select()
W przypadku, gdy chcesz ArrayList można
public ArrayList ConvertDT(ref DataTable dt)
{
ArrayList converted = new ArrayList(dt.Rows.Count);
foreach (DataRow row in dt.Rows)
{
converted.Add(row);
}
return converted;
}
ja nie wykorzystał funkcję dt.rows.CopyTo. może to też działa.
0
Jeśli chcesz zobaczyć zawartość jako ciąg znaków, użyj tego kodu:
string.Join(",", dataTable.AsEnumerable().SelectMany(row => row.ItemArray))
Powiązane problemy
- 1. Angular2: przekonwertuj tablicę na Observable
- 2. Perl, przekonwertuj hasz na tablicę
- 3. przekonwertuj dwuwymiarową tablicę na ciąg
- 4. Jak ograniczenia ADO.NET DataTable wpływają na wydajność?
- 5. post tabeli HTML do ADO.NET DataTable
- 6. Utwórz miniaturę, a następnie przekonwertuj na tablicę bajtów
- 7. Konwersja zakresu Excel do ADO.NET DataSet lub DataTable, itp.
- 8. Jaka jest alternatywa dla DataTable z ADO.NET pod MVC 6?
- 9. SSE: przekonwertuj krótką liczbę całkowitą na zmienną
- 10. C++: przekonwertuj wektor na krotkę
- 11. C# przekonwertuj bit na boolean
- 12. przekonwertuj obiekt klasy na bajty
- 13. ADO.NET DataRow - sprawdź istnienie kolumny
- 14. Asynchroniczny ADO.NET
- 15. Konwertuj datatable na datareader
- 16. Konwertuj IEnumerable na DataTable
- 17. groovy przekonwertuj ciąg "1,503" na liczbę całkowitą
- 18. Python - przekonwertuj plik CSV na JSON
- 19. przekonwertuj to wyrażenie LINQ na Lambda
- 20. przekonwertuj ciąg na liczbę całkowitą w C++
- 21. AutoMapper i przekonwertuj datetime na ciąg
- 22. przekonwertuj obiekt python na cytonowy wskaźnik
- 23. przekonwertuj ciąg znaków na datę python
- 24. Jak zdać GeoJSON tablicę do DataTable dyanamically przy użyciu javascript
- 25. Tworzenie ADO.NET DataView pokazując tylko wybranych kolumn
- 26. Błąd instalacji SQLite ADO.NET na Win 7
- 27. przekonwertuj matrycę do obrazu
- 28. Konwertuj dane CSV na DataTable w VB.net
- 29. Jak wywołać procedurę przechowywaną przy użyciu ADO.NET
- 30. Jak przenieść wiersz DataTable na pierwszą pozycję jego DataTable
nie wydaje się, aby skopiować wszystkie wiersze z RowState == DataRowState.Deleted – Alex
@Alex: To dlatego, że z rzędu ze stanem "Deleted" nie jest już uważany za część tabeli. Jeśli chcesz zweryfikować, porównaj '.Select()' z 'table.Rows.Count'. Przekonasz się, że są identyczne. –
NIESAMOWITE! –