Как я могу проверить, что SqlDataSource вернул данные? - PullRequest
5 голосов
/ 09 февраля 2010

У меня есть страница asp.net, в которой определено несколько SqlDataSources, которые подают данные в некоторые графики. Графическое произведение не обрабатывает «нет данных» изящно и выдает исключение. Я хотел бы, чтобы это разрешило ситуацию - поэтому мне нужно проверить, вернули ли данные SqlDataSource, перед рендерингом графика (и, если нет, просто опубликовать сообщение «Нет данных» или что-то в этом роде).

Есть ли простой способ проверить, возвращал ли источник данных данные, и сделать это, если / тогда без кучки кода позади?

Ответы [ 2 ]

14 голосов
/ 09 февраля 2010

Следующее взято из devcurry, который в значительной степени то, что вы ищете.

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

И в коде позади:

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

    If e.AffectedRows < 1 Then

        ' perform action

    End If

End Sub
3 голосов
/ 09 февраля 2010

попробуйте это http://www.devcurry.com/2009/02/how-do-you-check-if-sqldatasource.html

Я надеюсь, если это поможет вам ..

...