Does DataView.ToTable() keep a descending sort order?

Ylva D

New member
Joined
Jul 2, 2009
Messages
2
Programming Experience
1-3
Hi everyone!

I have a problem with sorting a DataTable. I'm using DataView.Sort and then DataView.ToTable() to get the sorted table. Then I go through the table row by row and create nodes in a TreeView which is shown in a desktop application.

My problem is that I can sort the data in ascending order and it is shown in the TreeView in a correct way, but when I use the same sort mechanism but just change the order to descending it doesn't work.

But maybe the problem lies in the DataView.ToTable function. Does this keep a descending order or do I have to fix this myself when I create nodes in my TreeView by going through the DataRows in reverse order?

Hoping someone knows this.
Thanks in advance,

/Ylva
 
My test show both sort orders are preserved.
 
Ok. Then something must be really strange about my code because when I step through my sorting function I see that the sort direction is "DESC" and then I run the ToTable() function but when I step through the resulting table like this..

VB.NET:
For r As Integer = 0 To dataTable.Rows.Count - 1

            Dim row As DataRow = dataTable.Rows(r)
            ......
Next

...I see that the table still is sorted in an ascending direction.

What could be the explanation for this?
 
Why do you care about the order of rows in the table? Why not just use the DataView as the data source for your tree view; the rows are coming out in order.

Tables are not suposedto be sortd/have order imposed/relied upon. If you want rows out in a certain order, pull them out of the view, because the view;s job is to perform the ordering

In MVC concept, table is the M and, not the V (view is the V) so by trying to get an M to behave as a V youre using the wrong tool for the job
 
Back
Top