Changer SqlDataSource.SelectCommand au moment de l'exécution des sauts de pagination

J'ai un GridView lié à un SqlDataSource avec une valeur par défaut SelectCommand définie comme suit:

<asp:SqlDataSource ID="SqlDataSource1" runat="server" DataSourceMode="DataSet"
      ConnectionString="<%$ ConnectionStrings:MyConn %>" 
      ProviderName="MySql.Data.MySqlClient" 
      SelectCommand="select * from blah blah" />

Il y a des cas où j'ai du modifier cette requête dynamiquement à l'exécution, de sorte que je ne les suivants:

SqlDataSource1.SelectCommand = sql; //'sql' is the new query
GridView1.PageIndex = 0;
GridView1.EditIndex = -1;
GridView1.SelectedIndex = -1;
GridView1.DataBind();
updatePanel.Update();

Cela fonctionne bien, mais lorsque je clique sur la pagination des contrôles, le jeu de résultats par défaut de la SelectCommand définis dans le SqlDataSource1.

Moyen de contourner ce problème?

Grâce,
Marque

OriginalL'auteur Mark Richman | 2010-07-23