Freigeben über


SqlRowUpdatedEventArgs Klasse

Definition

Stellt Daten für das RowUpdated-Ereignis bereit.

public ref class SqlRowUpdatedEventArgs sealed : System::Data::Common::RowUpdatedEventArgs
public sealed class SqlRowUpdatedEventArgs : System.Data.Common.RowUpdatedEventArgs
type SqlRowUpdatedEventArgs = class
    inherit RowUpdatedEventArgs
Public NotInheritable Class SqlRowUpdatedEventArgs
Inherits RowUpdatedEventArgs
Vererbung
SqlRowUpdatedEventArgs

Beispiele

Das folgende Beispiel zeigt, wie sowohl die RowUpdatingRowUpdated Ereignisse als auch verwendet werden.

Das RowUpdating Ereignis gibt die folgende Ausgabe zurück:

Ereignisargumente: (command=System.Data.SqlClient.SqlCommand commandType=2 status=0)

Das RowUpdated Ereignis gibt die folgende Ausgabe zurück:

Ereignisargumente: (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 connectionString =
              "Integrated Security=SSPI;database=Northwind;server=MSSQL1";
    const string queryString = "SELECT * FROM Products";

    // create DataAdapter
    SqlDataAdapter adapter = new SqlDataAdapter(queryString, connectionString);
    SqlCommandBuilder builder = new SqlCommandBuilder(adapter);

    // Create and fill DataSet (select only first 5 rows)
    DataSet dataSet = new DataSet();
    adapter.Fill(dataSet, 0, 5, "Table");

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

    // add handlers
    adapter.RowUpdating += new SqlRowUpdatingEventHandler( OnRowUpdating );
    adapter.RowUpdated += new SqlRowUpdatedEventHandler( OnRowUpdated );

    // update, this operation fires two events
    // (RowUpdating/RowUpdated) per changed row
    adapter.Update(dataSet, "Table");

    // remove handlers
    adapter.RowUpdating -= new SqlRowUpdatingEventHandler( OnRowUpdating );
    adapter.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 connectionString As String = _
            "Integrated Security=SSPI;database=Northwind;server=MSSQL1"
        Const queryString As String = "SELECT * FROM Products"
        
        ' create DataAdapter
        Dim adapter As New SqlDataAdapter(queryString, connectionString)
        Dim builder As New SqlCommandBuilder(adapter)
        
        ' Create and fill DataSet (select only first 5 rows)
        Dim dataSet As New DataSet()
        adapter.Fill(dataSet, 0, 5, "Table")
        
        ' Modify DataSet
        Dim table As DataTable = dataSet.Tables("Table")
        table.Rows(0)(1) = "new product"
        
        ' add handlers
        AddHandler adapter.RowUpdating, AddressOf OnRowUpdating
        AddHandler adapter.RowUpdated, AddressOf OnRowUpdated
        
        ' update, this operation fires two events 
        '(RowUpdating/RowUpdated) per changed row 
        adapter.Update(dataSet, "Table")
        
        ' remove handlers
        RemoveHandler adapter.RowUpdating, AddressOf OnRowUpdating
        RemoveHandler adapter.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 
End Class

Hinweise

Das RowUpdated Ereignis wird ausgelöst, wenn ein Update zu einer Zeile abgeschlossen ist.

Wenn Sie Updateverwenden, gibt es zwei Ereignisse, die für jede aktualisierte Datenzeile auftreten. Die Ausführungsreihenfolge lautet wie folgt:

  1. Die Werte in werden DataRow in die Parameterwerte verschoben.

  2. Das OnRowUpdating-Ereignis wird ausgelöst.

  3. Der Befehl wird ausgeführt.

  4. Wenn der Befehl auf FirstReturnedRecordfestgelegt ist, und das erste zurückgegebene Ergebnis in der DataRowplatziert wird.

  5. Wenn Ausgabeparameter vorhanden sind, werden sie im DataRowplatziert.

  6. Das OnRowUpdated-Ereignis wird ausgelöst.

  7. AcceptChanges wird aufgerufen.

Konstruktoren

SqlRowUpdatedEventArgs(DataRow, IDbCommand, StatementType, DataTableMapping)

Initialisiert eine neue Instanz der SqlRowUpdatedEventArgs-Klasse.

Eigenschaften

Command

Ruft den beim Aufruf von SqlCommand ausgeführten Update(DataSet) ab oder legt diesen fest.

Errors

Ruft alle Fehler ab, die während der Ausführung von Command durch den .NET-Datenanbieter generiert wurden.

(Geerbt von RowUpdatedEventArgs)
RecordsAffected

Ruft die Anzahl der durch die Ausführung der SQL-Anweisung geänderten, eingefügten oder gelöschten Zeilen ab.

(Geerbt von RowUpdatedEventArgs)
Row

Ruft das durch ein DataRow gesendete Update(DataSet) ab.

(Geerbt von RowUpdatedEventArgs)
RowCount

Ruft die Anzahl von Zeilen ab, die in einem Batch aktualisierter Datensätze verarbeitet wurden.

(Geerbt von RowUpdatedEventArgs)
StatementType

Ruft den Typ der ausgeführten SQL-Anweisung ab.

(Geerbt von RowUpdatedEventArgs)
Status

Ruft den UpdateStatus der Command-Eigenschaft ab.

(Geerbt von RowUpdatedEventArgs)
TableMapping

Ruft das durch ein DataTableMapping gesendete Update(DataSet) ab.

(Geerbt von RowUpdatedEventArgs)

Methoden

CopyToRows(DataRow[])

Kopiert Verweise auf die geänderten Zeilen in das bereitgestellte Array.

(Geerbt von RowUpdatedEventArgs)
CopyToRows(DataRow[], Int32)

Kopiert Verweise auf die geänderten Zeilen in das bereitgestellte Array.

(Geerbt von RowUpdatedEventArgs)
Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für:

Weitere Informationen