tags:

views:

832

answers:

3

Here we are again with the next problem in sorting.

this is a follow up question to this question

I have now made a type to contain the data I need. however, when I try to fetch the data FROM the gridview it returns null, which means I can't sort anything that is not there in the first place...

any ideas why this returns null ...

IEnumerable<JointServerData> data = gvServers.DataSource;
var sorted = data;
switch (p)
   {
       case "domain":
            sorted = data.OrderBy(o => o.DomainName);
            break;
       default:
            break;
    }
gvServers.DataSource = sorted;
gvServers.DataBind();

above is what I'm trying to do ...

A: 

Try to set data binding in Init event of control.

Soul_Master
+3  A: 

Without seeing all your code I'd have to assume that this is a PostBack issue. Website's are intrinsically stateless and you need to resolve this by either caching information between page requests or retrieving the data each time.

Mark
+4  A: 

I agree with Mark. It seems that this happens between postbacks. If so, you can't have access to grid's datasource, because after first binding and rendering this grid to html, you will receice only that html on postback, but not real datasource. You need to keep your datasource either in session or get it on every postback from database.

P.S. and sorry, guys, for my ugly English :-[

Tror