Evento SqlCeDataAdapter.RowUpdating

Si verifica durante una chiamata al metodo Update prima dell'esecuzione di un comando di aggiornamento nell'origine dati. L'evento viene generato al tentativo di eseguire l'aggiornamento.

Spazio dei nomi  System.Data.SqlServerCe
Assembly:  System.Data.SqlServerCe (in System.Data.SqlServerCe.dll)

Sintassi

public event SqlCeRowUpdatingEventHandler RowUpdating

Osservazioni

Quando si utilizza il metodo Update, si verificano due eventi per ogni riga di dati aggiornata. L'ordine di esecuzione è il seguente:

  1. I valori della classe DataRow vengono spostati nei valori di parametro.

  2. Viene generato l'evento OnRowUpdating.

  3. Viene eseguito il comando.

  4. Se il comando è impostato su FirstReturnedRecord, il primo risultato restituito viene inserito nella classe DataRow.

  5. Viene generato l'evento OnRowUpdated.

  6. Viene chiamato il metodo AcceptChanges.

Esempi

Nell'esempio che segue sono illustrati gli eventi RowUpdating e RowUpdated in uso.

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);
}

Vedere anche

Riferimento

SqlCeDataAdapter Classe

Spazio dei nomi System.Data.SqlServerCe