2010-09-29 6 views
3

J'essaye de trier un ListView en utilisant C#, mais chaque fois que je clique sur le bouton de tri, il bloque la page Web. Voici mon code ASP.NET:Tri d'un ListView en C# provoquant des plantages

<asp:ListView ID="list" runat="server" OnSorting="list_Sorting"> 

     <LayoutTemplate> 
      <asp:LinkButton runat="server" ID="Sorter" CommandName="Sort" CommandArgument="DispName" Text="Display Name" /> 
      <asp:PlaceHolder ID="itemPlaceholder" runat="server" /> 
     </LayoutTemplate> 

     <ItemTemplate> 
      <tr> 
       <td> 
        <%# Eval("DispName") %> 
       </td> 
      </tr> 
     </ItemTemplate> 

    </asp:ListView> 

Et voici ma méthode C# list_Sorting:

protected void list_Sorting(object sender, ListViewSortEventArgs e) 
{ 
    string sortColumn = e.SortExpression; 
    SortDirection sortDirection= (SortDirection) e.SortDirection; 
    list.Sort(sortColumn, sortDirection); 
    list.DataBind(); 
} 

Pourquoi est-il s'écraser lorsque je tente de régler ce problème?

Il n'y a aucune exception, il dit juste: "WebDev.WebServer.exe a rencontré un problème et doit fermer."

+0

Pouvez-vous ajouter le message d'exception s'il vous plaît? –

+1

Il plante parce que vous faites quelque chose de mal ... Sérieusement, vous devrez ajouter plus de détails (comme ce genre d'exception a été levée, etc ...) afin d'obtenir des réponses utiles. –

+0

Quand vous dites s'écraser, je suppose que vous voulez dire qu'il vous donne une exception, quelle est l'exception? – CodingGorilla

Répondre

10

L'événement de tri est déclenché lorsqu'un bouton Trier est cliqué ou la méthode de tri est appelé

protected void list_Sorting(object sender, ListViewSortEventArgs e) 
{ 
    ... 
    list.Sort(sortColumn, sortDirection); 
    ... 
} 

boucle infinie

+0

Je voudrais pouvoir vous donner +10 points. Ce bug a écrasé tout mon service à un point où j'ai dû redémarrer ma machine et m'a rendu fou de savoir pourquoi il se comporte de cette façon. J'ai jeté un compteur là-dedans parce que je ne pouvais pas le croire. Effectivement, boucle infinie. Je vous remercie! – Lukas

Questions connexes