SqlRowUpdatingEventArgs-Klasse
Stellt Daten für das RowUpdating-Ereignis bereit.
Namespace: System.Data.SqlClient
Assembly: System.Data (in system.data.dll)
Syntax
'Declaration
Public NotInheritable Class SqlRowUpdatingEventArgs
Inherits RowUpdatingEventArgs
'Usage
Dim instance As SqlRowUpdatingEventArgs
public sealed class SqlRowUpdatingEventArgs : RowUpdatingEventArgs
public ref class SqlRowUpdatingEventArgs sealed : public RowUpdatingEventArgs
public final class SqlRowUpdatingEventArgs extends RowUpdatingEventArgs
public final class SqlRowUpdatingEventArgs extends RowUpdatingEventArgs
Hinweise
Das RowUpdating-Ereignis wird ausgelöst, bevor eine Update-Methode in einer Zeile aufgerufen wird.
Wenn Sie Update verwenden, treten pro aktualisierter Datenzeile zwei Ereignisse ein. Die Ausführung erfolgt in der folgenden Reihenfolge:
Die Werte in der DataRow werden in die Parameterwerte verschoben.
Das OnRowUpdating-Ereignis wird ausgelöst.
Der Befehl wird ausgeführt.
Wenn der Befehl auf FirstReturnedRecord festgelegt ist, wird das erste zurückgegebene Ergebnis in der DataRow platziert.
Wenn Ausgabeparameter vorhanden sind, werden diese in der DataRow platziert.
Das OnRowUpdated-Ereignis wird ausgelöst.
AcceptChanges wird aufgerufen.
Beispiel
Das folgende Beispiel veranschaulicht, wie das RowUpdating-Ereignis und das RowUpdated-Ereignis verwendet werden.
Das RowUpdating-Ereignis gibt die folgende Ausgabe zurück:
event args: (command=System.Data.SqlClient.SqlCommand commandType=2 status=0)
Das RowUpdated-Ereignis gibt die folgende Ausgabe zurück:
event args: (command=System.Data.SqlClient.SqlCommand commandType=2 recordsAffected=1 row=System.Data.DataRow[37] status=0)
'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
// 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 + ")");
}
Vererbungshierarchie
System.Object
System.EventArgs
System.Data.Common.RowUpdatingEventArgs
System.Data.SqlClient.SqlRowUpdatingEventArgs
Threadsicherheit
Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.
Plattformen
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.
Versionsinformationen
.NET Framework
Unterstützt in: 2.0, 1.1, 1.0
.NET Compact Framework
Unterstützt in: 2.0, 1.0
Siehe auch
Referenz
SqlRowUpdatingEventArgs-Member
System.Data.SqlClient-Namespace