Udostępnij za pośrednictwem


SqlRowUpdatingEventArgs Klasa

Definicja

Udostępnia dane dla zdarzenia RowUpdating.

public ref class SqlRowUpdatingEventArgs sealed : System::Data::Common::RowUpdatingEventArgs
public sealed class SqlRowUpdatingEventArgs : System.Data.Common.RowUpdatingEventArgs
type SqlRowUpdatingEventArgs = class
    inherit RowUpdatingEventArgs
Public NotInheritable Class SqlRowUpdatingEventArgs
Inherits RowUpdatingEventArgs
Dziedziczenie
SqlRowUpdatingEventArgs

Przykłady

W poniższym przykładzie pokazano, jak używać zarówno zdarzeń, jak RowUpdating i RowUpdated .

Zdarzenie RowUpdating zwraca następujące dane wyjściowe:

event args: (command=System.Data.SqlClient.SQLCommand commandType=2 status=0)

Zdarzenie RowUpdated zwraca następujące dane wyjściowe:

event args: (command=System.Data.SqlClient.SQLCommand commandType=2 recordsAffected=1 row=System.Data.DataRow[37] status=0)

// handler for RowUpdating event
private static void OnRowUpdating(object sender, SqlRowUpdatingEventArgs e)
{
    PrintEventArgs(e);
}

//Handler for RowUpdated event.
private static void OnRowUpdated(object sender, SqlRowUpdatedEventArgs e)
{
    PrintEventArgs(e);
}

public static int Main()
{
    const string CONNECTION_STRING = "Persist Security Info=False;Integrated Security=SSPI;database=northwind;server=mySQLServer";
    const string SELECT_ALL = "select * from Products";

    //Create DataAdapter.
    SqlDataAdapter rAdapter    = new SqlDataAdapter(SELECT_ALL, CONNECTION_STRING);

    //Create and fill DataSet (Select only first 5 rows.).
    DataSet rDataSet = new DataSet();
    rAdapter.Fill(rDataSet, 0, 5, "Table");

    //Modify DataSet.
    DataTable rTable = rDataSet.Tables["Table"];
    rTable.Rows[0][1] = "new product";

    //Add handlers.
    rAdapter.RowUpdating += new SqlRowUpdatingEventHandler( OnRowUpdating );
    rAdapter.RowUpdated += new SqlRowUpdatedEventHandler( OnRowUpdated );

    //Update--this operation fires two events (RowUpdating and RowUpdated) for each changed row.
    rAdapter.Update(rDataSet, "Table");

    //Remove handlers.
    rAdapter.RowUpdating -= new SqlRowUpdatingEventHandler( OnRowUpdating );
    rAdapter.RowUpdated -= new SqlRowUpdatedEventHandler( OnRowUpdated );
    return 0;
}

private static void PrintEventArgs(SqlRowUpdatingEventArgs args)
{
    Console.WriteLine("OnRowUpdating");
    Console.WriteLine("  event args: ("+
        " command=" + args.Command +
        " commandType=" + args.StatementType +
        " status=" + args.Status + ")");
}

private static void PrintEventArgs(SqlRowUpdatedEventArgs args)
{
    Console.WriteLine("OnRowUpdated");
    Console.WriteLine("  event args: ("+
        " command=" + args.Command +
        " commandType=" + args.StatementType +
        " recordsAffected=" + args.RecordsAffected +
        " status=" + args.Status + ")");
}
'Handler for RowUpdating event.
Private Shared Sub OnRowUpdating(sender As Object, e As SqlRowUpdatingEventArgs)
    PrintEventArgs(e)
End Sub 

'Handler for RowUpdated event.
Private Shared Sub OnRowUpdated(sender As Object, e As SqlRowUpdatedEventArgs)
    PrintEventArgs(e)
End Sub 

'Entry point which delegates to C-style main Private Function.
Public Overloads Shared Sub Main()
    System.Environment.ExitCode = Main(System.Environment.GetCommandLineArgs())
End Sub

Overloads Public Shared Function Main(args() As String) As Integer
    Const CONNECTION_STRING As String = "Persist Security Info=False;Integrated Security=SSPI;database=northwind;server=mySQLServer"
    Const SELECT_ALL As String = "select * from Products"
    
    'Create DataAdapter.
    Dim rAdapter As New SqlDataAdapter(SELECT_ALL, CONNECTION_STRING)
    
    'Create and fill DataSet (Select only first 5 rows.).
    Dim rDataSet As New DataSet()
    rAdapter.Fill(rDataSet, 0, 5, "Table")
    
    'Modify DataSet.
    Dim rTable As DataTable = rDataSet.Tables("Table")
    rTable.Rows(0)(1) = "new product"
    
    'Add handlers.
    AddHandler rAdapter.RowUpdating, AddressOf OnRowUpdating
    AddHandler rAdapter.RowUpdated, AddressOf OnRowUpdated
    
    'Update--this operation fires two events (RowUpdating and RowUpdated) for each changed row. 
    rAdapter.Update(rDataSet, "Table")
    
    'Remove handlers.
    RemoveHandler rAdapter.RowUpdating, AddressOf OnRowUpdating
    RemoveHandler rAdapter.RowUpdated, AddressOf OnRowUpdated
    Return 0
End Function 

Overloads Private Shared Sub PrintEventArgs(args As SqlRowUpdatingEventArgs)
    Console.WriteLine("OnRowUpdating")
    Console.WriteLine("  event args: (" & _
                    " command=" & _
                    args.Command.CommandText & _
                    " commandType=" & _
                    args.StatementType & _
                    " status=" & _
                    args.Status & _
                    ")")
End Sub 


Overloads Private Shared Sub PrintEventArgs(args As SqlRowUpdatedEventArgs)
    Console.WriteLine("OnRowUpdated")
    Console.WriteLine("  event args: (" & _
                    " command=" & _
                    args.Command.CommandText & _
                    " commandType=" & _
                    args.StatementType & _
                    " recordsAffected=" & _
                    args.RecordsAffected & _
                    " status=" & _
                    args.Status & _
                    ")")
End Sub

Uwagi

Zdarzenie RowUpdating jest wywoływane przed Update wierszem.

W przypadku korzystania z programu Updateistnieją dwa zdarzenia, które występują dla każdego zaktualizowanego wiersza danych. Kolejność wykonywania jest następująca:

  1. Wartości w elemecie DataRow są przenoszone do wartości parametrów.

  2. Zdarzenie OnRowUpdating jest zgłaszane.

  3. Polecenie jest wykonywane.

  4. Jeśli polecenie ma wartość FirstReturnedRecord, a pierwszy zwrócony wynik zostanie umieszczony w elemecie DataRow.

  5. Jeśli istnieją parametry wyjściowe, są one umieszczane w elemecie DataRow.

  6. Zdarzenie OnRowUpdated jest zgłaszane.

  7. Wywołano metodę AcceptChanges.

Konstruktory

SqlRowUpdatingEventArgs(DataRow, IDbCommand, StatementType, DataTableMapping)

Inicjuje nowe wystąpienie klasy SqlRowUpdatingEventArgs.

Właściwości

BaseCommand

Pobiera lub ustawia IDbCommand obiekt dla wystąpienia tej klasy.

(Odziedziczone po RowUpdatingEventArgs)
Command

Pobiera lub ustawia element SqlCommand do wykonania podczas wykonywania polecenia Update(DataSet).

Errors

Pobiera wszelkie błędy generowane przez dostawcę danych platformy .NET podczas Command wykonywania.

(Odziedziczone po RowUpdatingEventArgs)
Row

Pobiera element DataRow , który zostanie wysłany do serwera w ramach operacji wstawiania, aktualizowania lub usuwania.

(Odziedziczone po RowUpdatingEventArgs)
StatementType

Pobiera typ instrukcji SQL do wykonania.

(Odziedziczone po RowUpdatingEventArgs)
Status

Pobiera lub ustawia UpdateStatusCommand właściwość .

(Odziedziczone po RowUpdatingEventArgs)
TableMapping

Pobiera element do wysłania DataTableMapping za pośrednictwem .Update(DataSet)

(Odziedziczone po RowUpdatingEventArgs)

Metody

Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera bieżące wystąpienie.

(Odziedziczone po Object)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Dotyczy

Zobacz też