Sortiermethode für Datentabellenzeilen
Beim Arbeiten mit Datentabellen müssen Sie Zeilen häufig nach bestimmten Bedingungen sortieren. Angenommen, es gibt eine Datentabelle mit zwei Spalten:
<code>COL1 COL2 Abc 5 Def 8 Ghi 3</code>
Das Ziel besteht darin, diese Datentabelle in absteigender Reihenfolge basierend auf dem Wert der Spalte COL2 zu sortieren, was zu der folgenden Ausgabe führt:
<code>COL1 COL2 Def 8 Abc 5 Ghi 3</code>
Während das Sortieren einer DataView einfach ist, treten Probleme auf, wenn Sie die DataTable selbst direkt sortieren möchten, ohne eine DataView zu verwenden.
Lösung
Eine direkte In-Place-Sortierung einer DataTable ist nicht möglich. Sie können jedoch bei Bedarf eine neue DataTable erstellen, die aus der sortierten DataView erstellt wird. So geht's:
DataView dv = ft.DefaultView; dv.Sort = "COL2 desc"; DataTable sortedDT = dv.ToTable();
Erstellen Sie im Code zunächst eine DataView (dv) aus der ursprünglichen DataTable (ft). Verwenden Sie dann die Sort-Eigenschaft, um Sortierbedingungen auf die DataView anzuwenden. Verwenden Sie abschließend die Methode ToTable(), um aus der sortierten DataView eine neue DataTable (sortedDT) zu erstellen.
Mit diesem Ansatz kann die gewünschte Sortierung erreicht werden, ohne die ursprüngliche DataTable zu ändern.
Das obige ist der detaillierte Inhalt vonWie kann ich die Zeilen einer DataTable sortieren, ohne die Originaltabelle zu ändern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!