SqlRowUpdatingEventArgs Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет данные о событии RowUpdating.
public ref class SqlRowUpdatingEventArgs sealed : System::Data::Common::RowUpdatingEventArgs
public sealed class SqlRowUpdatingEventArgs : System.Data.Common.RowUpdatingEventArgs
type SqlRowUpdatingEventArgs = class
inherit RowUpdatingEventArgs
Public NotInheritable Class SqlRowUpdatingEventArgs
Inherits RowUpdatingEventArgs
- Наследование
-
SqlRowUpdatingEventArgs
Примеры
В следующем примере показано, как использовать события RowUpdating и RowUpdated .
Событие RowUpdating возвращает следующие выходные данные:
аргументы event: (command=Microsoft.Data.SqlClient.SQLCommand commandType=2 status=0)
Событие RowUpdated возвращает следующие выходные данные:
аргументы event: (command=Microsoft.Data.SqlClient.SQLCommand commandType=2 recordsAffected=1 row=System.Data.DataRow[37] status=0)
using Microsoft.Data.SqlClient;
using System.Xml;
using System.Data.Common;
using System.Windows.Forms;
public class Form1 : Form
{
private DataSet DataSet1;
private DataGrid dataGrid1;
// 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 + ")");
}
}
Комментарии
Событие RowUpdating вызывается перед элементом в Update строку.
При использовании Updateсуществует два события, которые происходят для каждой обновленной строки данных. Порядок выполнения выглядит следующим образом:
Значения в перемещены DataRow в значения параметров.
Возникает событие OnRowUpdating.
Выполняется команда .
Если для команды задано значение
FirstReturnedRecord
, а первый возвращенный результат помещается в DataRow.Если есть выходные параметры, они помещаются в DataRow.
Возникает событие OnRowUpdated.
Вызывается метод AcceptChanges.
Конструкторы
SqlRowUpdatingEventArgs(DataRow, IDbCommand, StatementType, DataTableMapping) |
Инициализирует новый экземпляр класса SqlRowUpdatingEventArgs. |
Свойства
Command |
Возвращает или задает команду SqlCommand, которую необходимо выполнить в процессе Update(DataSet). |