2010-02-09 3 views
5

J'ai une page asp.net qui a plusieurs SqlDataSources définis qui alimentent les données dans certains graphiques. Le produit graphique ne gère pas "sans données" avec élégance, et déclenche une exception. Je voudrais que cela gère la situation - donc j'ai besoin de vérifier si le SqlDataSource a retourné des données avant de rendre le graphique (et si ce n'est pas le cas, il suffit de poster un message disant "No Data" ou quelque chose comme ça).Comment puis-je vérifier qu'un SqlDataSource a renvoyé des données?

Existe-t-il un moyen facile de vérifier si la source de données a renvoyé des données, et le faire si/alors sans un tas de code derrière?

Répondre

14

Ce qui suit est tirée de devcurry, qui est à peu près ce que vous recherchez.

<asp:SqlDataSource ID="SqlDataSource1" runat="server" 
    ConnectionString="<%$ ConnectionStrings:NorthwindConnectionString %>" 
    SelectCommand="SELECT [CustomerID], [CompanyName], [ContactName], 
    [ContactTitle], [Address] FROM [Customers]" 
    onselected="SqlDataSource1_Selected"> 
</asp:SqlDataSource> 

Et dans le code derrière:

Protected Sub SqlDataSource1_Selected(ByVal sender As Object, ByVal e As SqlDataSourceStatusEventArgs) 

    If e.AffectedRows < 1 Then 

     ' perform action 

    End If 

End Sub 
+0

merci JackM-- est-il possible de faire l'instruction if dans la page, pas dans le code derrière? – julio

+0

Pourquoi ne pas le faire dans le code derrière? –

+0

aucune raison, fait de cette façon après tout. Merci! – julio

Questions connexes