SqlRowUpdatedEventArgs Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Предоставляет данные для 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
- Наследование
Примеры
В следующем примере показано, как использовать как события, RowUpdating так и RowUpdated события.
Событие возвращает следующие выходные RowUpdating данные:
Аргументы событий: (command=System.Data.SqlClient.SqlCommand commandType=2 status=0)
Событие возвращает следующие выходные RowUpdated данные:
Аргументы событий: (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 = "...";
const string queryString = "SELECT * FROM Products";
// create DataAdapter
SqlDataAdapter adapter = new(queryString, connectionString);
SqlCommandBuilder builder = new(adapter);
// Create and fill DataSet (select only first 5 rows)
DataSet dataSet = new();
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
Public Overloads Shared Function Main(args() As String) As Integer
Const connectionString As String = "..."
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
Private Overloads 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
Private Overloads 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
Комментарии
Событие RowUpdated возникает при Update завершении строки.
При использовании Updateдля каждой строки данных обновляется два события. Порядок выполнения выглядит следующим образом:
Значения в этом DataRow файле перемещаются в значения параметров.
Возникает событие OnRowUpdating.
Выполняется команда.
Если задано
FirstReturnedRecordзначение команды, а первый возвращенный результат помещается в .DataRowЕсли есть выходные параметры, они помещаются в .DataRow
Возникает событие OnRowUpdated.
AcceptChanges вызывается.
Конструкторы
| Имя | Описание |
|---|---|
| SqlRowUpdatedEventArgs(DataRow, IDbCommand, StatementType, DataTableMapping) |
Инициализирует новый экземпляр класса SqlRowUpdatedEventArgs. |
Свойства
| Имя | Описание |
|---|---|
| Command |
Возвращает или задает исполняемый SqlCommand при Update(DataSet) вызове. |
| Errors |
Возвращает все ошибки, созданные поставщиком данных .NET при выполнении Command. (Унаследовано от RowUpdatedEventArgs) |
| RecordsAffected |
Возвращает количество строк, измененных, вставленных или удаленных при выполнении инструкции SQL. (Унаследовано от RowUpdatedEventArgs) |
| Row |
Возвращает отправленный DataRow через объект Update(DataSet). (Унаследовано от RowUpdatedEventArgs) |
| RowCount |
Возвращает количество строк, обработанных в пакете обновленных записей. (Унаследовано от RowUpdatedEventArgs) |
| StatementType |
Возвращает тип выполняемой инструкции SQL. (Унаследовано от RowUpdatedEventArgs) |
| Status |
UpdateStatus Command Возвращает свойство. (Унаследовано от RowUpdatedEventArgs) |
| TableMapping |
Возвращает отправленный DataTableMapping через объект Update(DataSet). (Унаследовано от RowUpdatedEventArgs) |
Методы
| Имя | Описание |
|---|---|
| CopyToRows(DataRow[], Int32) |
Копирует ссылки на измененные строки в предоставленный массив. (Унаследовано от RowUpdatedEventArgs) |
| CopyToRows(DataRow[]) |
Копирует ссылки на измененные строки в предоставленный массив. (Унаследовано от RowUpdatedEventArgs) |
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |