Welche Methode eignet sich am besten zum Konvertieren einer DataRowCollection-Instanz in eine DataRow []?Konvertieren von DataRowCollection in DataRow []
Antwort
Dies ist ziemlich offensichtlich, aber:
DataRowCollection.CopyTo(DataRow[] array, Int32 offset)
?
Es scheint wie egal, Sie müssen die Sammlung durchlaufen (CopyTo iteriert die internen DataRowTree-Elemente).
Ich nehme an, Sie könnten Reflektion verwenden, um auf den nicht-öffentlichen Baum zuzugreifen, aber zu erheblichen Kosten.
DataRow[] rows = dt.Select();
Angenommen, Sie haben noch Zugriff auf die Datentabelle.
Aus Gründen der Vollständigkeit ist dies ein weiterer Weg (mit Linq), und es die Reihe der Bestellung erhalten:
DataRow[] rows = dt.Rows.Cast<DataRow>().ToArray()
Wenn Sie auf die enthaltende Tabelle zugreifen nicht, können Sie die Erweiterung verwenden können Methode:
public static class DataRowCollectionExtensions
{
public static IEnumerable<DataRow> AsEnumerable(this DataRowCollection source)
{
return source.Cast<DataRow>();
}
}
Und danach:
DataRow[] dataRows = dataRowCollection.AsEnumerable().ToArray();
Aber wenn Sie Zugriff auf die beinhaltenden Tabelle haben, ist es besser, den Zugriff auf Zeilen mit DataTable
‚s AsEnumerable
Erweiterungsmethode (Description, Source):
DataRow[] dataRows = dataTable.AsEnumerable().ToArray();
Wie auch immer Sie DataTable
verwenden können‘ s Select
Verfahren mit mehreren Überlastungen (Description, Source):
DataRow[] dataRows = dataTable.Select();
- 1. Wie kann ich DataRow in String Array konvertieren?
- 2. Wie kann DataRow zu DataRowView in C#
- 3. Null Referenz von einem DataRow
- 4. Parsing int von DataRow Zelle
- 5. fetch datarow zu C# object
- 6. C# ArrayList in DataRow einfügen
- 7. ändern Datarow Feldwert
- 8. DataRow an TextBox binden
- 9. SELECT gibt datarow zweimal
- 10. .NET-Datarow-Visualizer?
- 11. Hinzufügen von DataRow einzeln zu DataTable
- 12. Auf Null überprüfen DataRow
- 13. Hinzufügen von Spalten zur neuen DataRow
- 14. Konvertieren von if-chain in regelbasiertes Wörterbuch
- 15. Index des aktuellen DataRow in einer Datatable
- 16. Versuchen, eine DataRow in C# mit LINQ
- 17. Retrieve DataRow nach get sql
- 18. Holen DataRow von bearbeitbaren DataGridView in Windows Forms-Anwendung
- 19. Objektreferenz nicht gesetzt Ausnahme beim Abrufen von Datarow in asp
- 20. Wie man DataRow in C# fett schreibt?
- 21. Suche in einer Liste <DataRow>?
- 22. DataTestMethod und DataRow-Attribute in MSTEST
- 23. DataTable DataRow DataColumn für Spalten
- 24. Konvertieren von ungebundenen Datagridview zu einer Datatable
- 25. Konvertieren von HTML-Text in Plain-Text
- 26. Wenn ich eine DataRow aktualisiere, sperre ich die gesamte DataTable oder nur die DataRow?
- 27. So löschen Sie DataRow von DataTable auf RowCommand
- 28. DateTime-Wert von einer DataRow [] abrufen und an var übergeben
- 29. initialisieren DataRow Objekt mit Datagridview Ausgewählte Reihe
- 30. DataSet: Enumerator und FindById nicht gleich DataRow
einfachste Antwort, und richtig sind. Sollte als akzeptierte Antwort markiert sein. Diese Frage hat jetzt 3.500 Aufrufe! –
Einverstanden Javaman59, ich habe eine Frage an einen Moderator zur Überprüfung gestellt. – si618