SqlDataSourceStatusEventArgs Sınıf

Tanım

Bir veri işlemi tamamlandıktan sonra denetim tarafından SqlDataSource tetiklenen bir olay için veri sağlar.

public ref class SqlDataSourceStatusEventArgs : EventArgs
public class SqlDataSourceStatusEventArgs : EventArgs
type SqlDataSourceStatusEventArgs = class
    inherit EventArgs
Public Class SqlDataSourceStatusEventArgs
Inherits EventArgs
Devralma
SqlDataSourceStatusEventArgs

Örnekler

Aşağıdaki kod örneği, bir denetimi doldurmak GridView için saklı yordam içeren bir SqlDataSource denetim kullanılırken döndürülen çıkış parametrelerinin dönüş değerini ve değerlerini incelemek için sınıfının nasıl kullanılacağını SqlDataSourceStatusEventArgs gösterir. Saklı yordam içinde GridViewgörüntülenen verileri seçer, ancak tamsayı çıkış parametresi ve dönüş değeri gibi diğer bilgileri de çağırana geri geçirir. Saklı yordam için kullanılan parametreler SqlDataSource koleksiyon tarafından SelectParameters bulunur ve Web formundan saklı yordama bilgi geçiren parametrelerin yanı sıra bilgileri forma geri geçiren parametrelerden oluşur. Direction Bu parametrelerin özelliği ve ReturnValueolarak Output ayarlanır.

<%@Page  Language="C#" %>
<%@Import Namespace="System.Data" %>
<%@Import Namespace="System.Data.Common" %>
<%@Import Namespace="System.Data.SqlClient" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
// Clicking the Submit button explicitly refreshes the data 
// by calling the Select() method.
private void Submit(Object source, EventArgs e) {
  SqlDataSource1.Select(DataSourceSelectArguments.Empty);
}

// This event handler is called after the Select() method is executed.
private void OnSelectedHandler(Object source, SqlDataSourceStatusEventArgs e) {

  IDbCommand cmd = e.Command; 
  
  Label1.Text = "Parameter return values: ";

  foreach (SqlParameter param in cmd.Parameters) {
    //  Extract the value of the parameter.
    Label1.Text += param.ParameterName + " - " + param.Value.ToString();
  }
}
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
        <asp:sqldatasource
            id="SqlDataSource1"
            runat="server"
            datasourcemode="DataSet"
            connectionstring="<%$ ConnectionStrings:MyNorthwind%>"
            selectcommand="getordertotal"
            onselected="OnSelectedHandler">
            <selectparameters>
              <asp:querystringparameter name="empId" querystringfield="empId" />
              <asp:parameter name="total" type="Int32" direction="Output" defaultvalue="0" />
              <asp:parameter name="_ret" type="Int32" direction="ReturnValue" defaultvalue="0" />
            </selectparameters>
        </asp:sqldatasource>
        <!--
          CREATE PROCEDURE dbo.getordertotal
            @empId int,
            @total int OUTPUT
          as
            set nocount on
            select @total    = count(1) from orders where employeeid=@empid;
            select * from orders where employeeID = @empId ;
            return (-1000);
          GO
        -->

        <asp:gridview
          id="GridView1"
          runat="server"
          allowpaging="True"
          pagesize="5"
          datasourceid="SqlDataSource1" />

        <asp:button
          id="Button1"
          runat="server"
          onclick="Submit"
          text="Refresh Data" />

        <asp:label id="Label1" runat="server" />

    </form>
  </body>
</html>
<%@Page  Language="VB" %>
<%@Import Namespace="System.Data" %>
<%@Import Namespace="System.Data.Common" %>
<%@Import Namespace="System.Data.SqlClient" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
' Clicking the Submit button explicitly refreshes the data 
' by calling the Select() method.
Private Sub Submit(source As Object, e As EventArgs)
  
  SqlDataSource1.Select(DataSourceSelectArguments.Empty)
  
End Sub ' Submit

' This event handler is called after the Select() method is executed.
Private Sub OnSelectedHandler(source As Object, e As SqlDataSourceStatusEventArgs)

  Dim cmd As IDbCommand 
  cmd = e.Command
  Dim param As SqlParameter
  
  Label1.Text = "Parameter return values: "
  
  For Each param In cmd.Parameters
    
    ' Extract the name and value of the parameter.
    Label1.Text = Label1.Text & param.ParameterName & " - " & _
                  param.Value.ToString()

  Next

End Sub ' OnSelectedHandler
</script>

<html xmlns="http://www.w3.org/1999/xhtml" >
  <head runat="server">
    <title>ASP.NET Example</title>
</head>
<body>
    <form id="form1" runat="server">
        <asp:sqldatasource
            id="SqlDataSource1"
            runat="server"
            datasourcemode="DataSet"
            connectionstring="<%$ ConnectionStrings:MyNorthwind%>"
            selectcommand="getordertotal"
            onselected="OnSelectedHandler">
            <selectparameters>
              <asp:querystringparameter name="empId" querystringfield="empId" />
              <asp:parameter name="total" type="Int32" direction="Output" defaultvalue="0" />
              <asp:parameter name="_ret" type="Int32" direction="ReturnValue" defaultvalue="0" />
            </selectparameters>
        </asp:sqldatasource>
        <!--
          CREATE PROCEDURE dbo.getordertotal
            @empId int,
            @total int OUTPUT
          as
            set nocount on
            select @total    = count(1) from orders where employeeid=@empid;
            select * from orders where employeeID = @empId ;
            return (-1000);
          GO
        -->

        <asp:gridview
          id="GridView1"
          runat="server"
          allowpaging="True"
          pagesize="5"
          datasourceid="SqlDataSource1" />

        <asp:button
          id="Button1"
          runat="server"
          onclick="Submit"
          text="Refresh Data" />

        <asp:label id="Label1" runat="server" />

    </form>
  </body>
</html>

Açıklamalar

sınıfıSqlDataSourceStatusEventArgs, veri kaynağı denetimi tarafından gerçekleştirildikten sonra veritabanı işlemi hakkında bilgi geçirmek için , Updated, Insertedve Deleted olaylarında Selectedkullanılır. Bu bilgiler, işlemden etkilenen satır sayısını, DbCommand veri kaynağının işlemi gerçekleştirmek için kullandığı nesneyi ve sonuçta elde edilen özel durum bilgilerini içerir. , UpdatedInserted veya Deleted olaylarını işlemek Selectediçin bir olay işleyicisi temsilcisi ekleyerek bu verileri inceleyebilir ve gerekli ek işlem sonrası işlemleri gerçekleştirebilirsiniz.

Denetim, SqlDataSource bir veri işlemi sırasında temel alınan veri nesneleriyle çalışmak için işleyebileceğiniz birçok olayı kullanıma sunar. Aşağıdaki tabloda, denetimi kullanarak bir veri işleminin yaşam döngüsüne karşılık gelen çeşitli olaylara daha iyi yol göstermek için olayları ve ilişkili EventArgs ve olay işleyici sınıflarını SqlDataSource listeledik.

Olay Eventargs Eventhandler
Selecting veriler alınmadan önce gerçekleşir. SqlDataSourceSelectingEventArgs SqlDataSourceSelectingEventHandler
Inserting, Updatingekleme Deleting , güncelleştirme veya silme işlemi gerçekleştirilmeden önce gerçekleşir. SqlDataSourceCommandEventArgs SqlDataSourceCommandEventHandler
Selected, Inserted, Updated, Deleted veri alma, ekleme, güncelleştirme veya silme işlemleri tamamlandıktan sonra gerçekleşir. SqlDataSourceStatusEventArgs SqlDataSourceStatusEventHandler

Oluşturucular

SqlDataSourceStatusEventArgs(DbCommand, Int32, Exception)

Belirtilen çıkış parametrelerini, dönüş değerini ve veritabanı işleminden etkilenen satır sayısını kullanarak sınıfının yeni bir örneğini SqlDataSourceStatusEventArgs başlatır.

Özellikler

AffectedRows

Veritabanı işleminden etkilenen satır sayısını alır.

Command

Veritabanına gönderilen veritabanı komutunu alır.

Exception

Veri işlemi sırasında veritabanı tarafından oluşturulan özel durumlar için sarmalayıcı alır.

ExceptionHandled

Veritabanı tarafından oluşan bir özel durumun işlenip işlenmediğini belirten bir değer alır veya ayarlar.

Yöntemler

Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Type Geçerli örneğini alır.

(Devralındığı yer: Object)
MemberwiseClone()

Geçerli Objectöğesinin sığ bir kopyasını oluşturur.

(Devralındığı yer: Object)
ToString()

Geçerli nesneyi temsil eden dizeyi döndürür.

(Devralındığı yer: Object)

Şunlara uygulanır

Ayrıca bkz.