Sdílet prostřednictvím


SqlRowUpdatedEventArgs Třída

Definice

Poskytuje data pro událost RowUpdated.

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
Dědičnost
SqlRowUpdatedEventArgs

Příklady

Následující příklad ukazuje, jak používat RowUpdating události a RowUpdated .

Událost RowUpdating vrátí tento výstup:

Argumenty události: (command=System.Data.SqlClient.SqlCommand commandType=2 status=0)

Událost RowUpdated vrátí tento výstup:

Argumenty události: (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

Poznámky

Událost RowUpdated je vyvolána při Update dokončení příkazu k řádku.

Při použití nástroje Updateexistují dvě události, ke kterým dochází pro každý aktualizovaný řádek dat. Pořadí provádění je následující:

  1. Hodnoty v parametru DataRow se přesunou do hodnot parametrů.

  2. Událost OnRowUpdating je vyvolána.

  3. Příkaz se spustí.

  4. Pokud je příkaz nastavený na FirstReturnedRecordhodnotu a první vrácený výsledek se umístí do DataRow.

  5. Pokud existují výstupní parametry, umístí se do DataRow.

  6. Událost OnRowUpdated je vyvolána.

  7. Volá se AcceptChanges.

Konstruktory

SqlRowUpdatedEventArgs(DataRow, IDbCommand, StatementType, DataTableMapping)

Inicializuje novou instanci SqlRowUpdatedEventArgs třídy .

Vlastnosti

Command

Získá nebo nastaví SqlCommand spuštění při Update(DataSet) je volána.

Errors

Získá všechny chyby vygenerované zprostředkovatelem dat .NET při Command spuštění.

(Zděděno od RowUpdatedEventArgs)
RecordsAffected

Získá počet řádků změněných, vložených nebo odstraněných spuštěním příkazu SQL.

(Zděděno od RowUpdatedEventArgs)
Row

Získá odeslanou DataRow prostřednictvím .Update(DataSet)

(Zděděno od RowUpdatedEventArgs)
RowCount

Získá počet řádků zpracovaných v dávce aktualizovaných záznamů.

(Zděděno od RowUpdatedEventArgs)
StatementType

Získá typ sql příkaz spuštěn.

(Zděděno od RowUpdatedEventArgs)
Status

UpdateStatus Získá vlastnost Command .

(Zděděno od RowUpdatedEventArgs)
TableMapping

Získá odeslanou DataTableMapping prostřednictvím .Update(DataSet)

(Zděděno od RowUpdatedEventArgs)

Metody

CopyToRows(DataRow[], Int32)

Zkopíruje odkazy na upravené řádky do zadaného pole.

(Zděděno od RowUpdatedEventArgs)
CopyToRows(DataRow[])

Zkopíruje odkazy na upravené řádky do zadaného pole.

(Zděděno od RowUpdatedEventArgs)
Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Type Získá z aktuální instance.

(Zděděno od Object)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(Zděděno od Object)
ToString()

Vrátí řetězec, který představuje aktuální objekt.

(Zděděno od Object)

Platí pro

Viz také