forgottenrealm
Goto Top

Sortierung von DataTable nach Select aufgelöst

Moinmoin,

ich habe mehrere DataTables die ich beim Programmstart lade und die Daten im Hintergrund halte, um später darauf zuzugreifen.
An einigen Stellen benötige ich aus diesen DataTables nur bestimmte, gefilterte Daten. Diese hole ich mir so raus ...

Dim Rows() As Datarow = DS_Cache.DataTables.Users.Select("Power" & ">" & 50)  

If Rows.Count = 0 Then Exit Sub

Dim DT_Users As New DataTable(DS_Cache.DataTables.Users.TableName)
DT_Users = Rows.CopyToDataTable

In der Ursprungstabelle "DS_Cache.DataTables.Users" stehen die Daten, wie ich aus der MySQL Datenbank gezogen habe, sortiert drin.
Sobald ich aber über Select in die Rows() schreibe und von dort zurück in eine DataTable, um mit diesen gefilterten Daten weiter zu arbeiten, ist die Sortierung weg und es wurde nach einem vorhandenen ID Feld sortiert.

Die Daten müsste ich jetzt über ein DataView wieder sortieren und erneut in die neue DataTable schreiben, was aber für jeden Zugriff auf gefilterte Daten passieren muss.

Ist es so gewollt, ist es ein Fehler im Framework (4.5.1, VB.NET) ?

Ich hoffe, ihr könnt mir helfen.

Grüße face-smile

Content-ID: 351286

Url: https://administrator.de/contentid/351286

Ausgedruckt am: 04.12.2024 um 08:12 Uhr

134464
134464 10.10.2017 aktualisiert um 16:24:44 Uhr
Goto Top
Hättest du vor dem Schreiben des Threads wenigstens mal die Doku studiert wärst du hierauf gestoßen
https://msdn.microsoft.com/de-de/library/det4aw50(v=vs.110).aspx
Um die richtige Sortierreihenfolge sicherzustellen, geben Sie Sortierkriterien mit Select oder Select.
Also die Sortierung im SQL Befehl mitgeben...fertig.

That's not a bug, it's a feature!

Leute, fangt endlich mal an zu lesen ....