+ Reply to Thread
Results 1 to 4 of 4

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

  1. #1
    Ylva D is offline VB.NET Forum Newbie Ylva D is on a distinguished programming path ahead
    .NET Framework
    .NET 3.5 (VS 2008)
    Join Date
    Jul 2009
    Age
    30
    Posts
    2
    Reputation
    0

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

    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

  2. #2
    JohnH's Avatar
    JohnH is offline VB.NET Forum Moderator JohnH has a reputation beyond repute JohnH has a reputation beyond repute JohnH has a reputation beyond repute JohnH has a reputation beyond repute JohnH has a reputation beyond repute JohnH has a reputation beyond repute JohnH has a reputation beyond repute JohnH has a reputation beyond repute JohnH has a reputation beyond repute JohnH has a reputation beyond repute JohnH has a reputation beyond repute
    .NET Framework
    .NET 4.0
    Join Date
    Dec 2005
    Location
    Norway
    Age
    37
    Posts
    11,055
    Reputation
    1564

    Default

    My test show both sort orders are preserved.

  3. #3
    Ylva D is offline VB.NET Forum Newbie Ylva D is on a distinguished programming path ahead
    .NET Framework
    .NET 3.5 (VS 2008)
    Join Date
    Jul 2009
    Age
    30
    Posts
    2
    Reputation
    0

    Default

    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..

    Code:
    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?

  4. #4
    cjard's Avatar
    cjard is offline VB.NET Forum All-Mighty cjard has a reputation beyond repute cjard has a reputation beyond repute cjard has a reputation beyond repute cjard has a reputation beyond repute cjard has a reputation beyond repute cjard has a reputation beyond repute cjard has a reputation beyond repute cjard has a reputation beyond repute cjard has a reputation beyond repute cjard has a reputation beyond repute cjard has a reputation beyond repute
    .NET Framework
    .NET 2.0 (VS 2005)
    Join Date
    Apr 2006
    Age
    66
    Posts
    6,771
    Reputation
    937

    Default

    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

+ Reply to Thread

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

     

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts