SqlCeDataAdapter.RowUpdated Event
.NET Framework 3.0
Occurs during a call to Update after an update command is executed against the data source. The attempt to update is made and then this event fires.
Namespace: System.Data.SqlServerCe
Assembly: System.Data.SqlServerCe (in system.data.sqlserverce.dll)
Assembly: System.Data.SqlServerCe (in system.data.sqlserverce.dll)
When using Update, there are two events that occur for each data row updated. The order of execution is as follows:
-
The values in the DataRow are moved to the parameter values.
-
The OnRowUpdating event is raised.
-
The command executes.
-
If the command is set to FirstReturnedRecord, then the first returned result is placed in the DataRow.
-
The OnRowUpdated event is raised.
-
AcceptChanges is called.
The following example shows the RowUpdating and RowUpdated events in use.
public void Snippet5() { // Create DataAdapter // SqlCeDataAdapter adp = new SqlCeDataAdapter( "SELECT * FROM products", "Data Source = MyDatabase.sdf"); SqlCeCommandBuilder cb = new SqlCeCommandBuilder(adp); // Create and fill the dataset (select only first 5 rows) // DataSet ds = new DataSet(); adp.Fill(ds, 0, 5, "Table"); // Modify dataSet // DataTable table = ds.Tables["Table"]; table.Rows[1]["Product Name"] = "Asian Chai"; // Add handlers // adp.RowUpdating += new SqlCeRowUpdatingEventHandler(OnRowUpdating); adp.RowUpdated += new SqlCeRowUpdatedEventHandler(OnRowUpdated); // Update, this operation fires two events (RowUpdating/RowUpdated) // adp.Update(ds, "Table"); // Remove handlers // adp.RowUpdating -= new SqlCeRowUpdatingEventHandler(OnRowUpdating); adp.RowUpdated -= new SqlCeRowUpdatedEventHandler(OnRowUpdated); } private static void OnRowUpdating(object sender, SqlCeRowUpdatingEventArgs e) { Console.WriteLine("OnRowUpdating"); Console.WriteLine(e.Command.CommandText); Console.WriteLine(e.StatementType); Console.WriteLine(e.Status); } private static void OnRowUpdated(object sender, SqlCeRowUpdatedEventArgs e) { Console.WriteLine("OnRowUpdated"); Console.WriteLine(e.Command.CommandText); Console.WriteLine(e.StatementType); Console.WriteLine(e.Status); }