2010-02-09 27 views
5

Tôi có một trang asp.net có một số SqlDataSources xác định rằng dữ liệu nguồn cấp dữ liệu vào một số biểu đồ. Sản phẩm biểu đồ không xử lý "không có dữ liệu" một cách duyên dáng và ném ngoại lệ. Tôi muốn điều này xử lý tình huống - vì vậy tôi cần kiểm tra xem liệu dữ liệu trả về SqlDataSource trước khi hiển thị biểu đồ (và nếu không, chỉ cần đăng thông báo có nội dung "Không có dữ liệu").làm cách nào để kiểm tra xem một SqlDataSource có trả lại dữ liệu không?

Có cách nào dễ dàng để kiểm tra xem nguồn dữ liệu có trả về dữ liệu không và thực hiện điều này nếu/sau đó không có một đoạn mã đằng sau?

Trả lời

14

Sau đây là lấy từ devcurry, mà là khá nhiều những gì bạn đang tìm kiếm.

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

Và trong mã đằng sau:

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

    If e.AffectedRows < 1 Then 

     ' perform action 

    End If 

End Sub 
+0

cảm ơn JackM-- có thể thực hiện lệnh if trong trang chứ không phải mã phía sau? – julio

+0

Tại sao bạn không thể làm điều này trong mã phía sau? –

+0

không có lý do gì, sau đó thì làm theo cách đó. Cảm ơn! – julio

Các vấn đề liên quan