| File: System\Data\Common\RowUpdatingEventArgs.cs | Web Access |
| Project: src\runtime\src\libraries\System.Data.Common\src\System.Data.Common.csproj (System.Data.Common) |
// Licensed to the .NET Foundation under one or more agreements. // The .NET Foundation licenses this file to you under the MIT license. namespace System.Data.Common { public class RowUpdatingEventArgs : EventArgs { private IDbCommand? _command; private readonly StatementType _statementType; private readonly DataTableMapping _tableMapping; private Exception? _errors; private readonly DataRow _dataRow; private UpdateStatus _status; public RowUpdatingEventArgs(DataRow dataRow, IDbCommand? command, StatementType statementType, DataTableMapping tableMapping) { ADP.CheckArgumentNull(dataRow, nameof(dataRow)); ADP.CheckArgumentNull(tableMapping, nameof(tableMapping)); switch (statementType) { case StatementType.Select: case StatementType.Insert: case StatementType.Update: case StatementType.Delete: break; case StatementType.Batch: throw ADP.NotSupportedStatementType(statementType, nameof(RowUpdatingEventArgs)); default: throw ADP.InvalidStatementType(statementType); } _dataRow = dataRow; _command = command; // maybe null _statementType = statementType; _tableMapping = tableMapping; } protected virtual IDbCommand? BaseCommand { get { return _command; } set { _command = value; } } public IDbCommand? Command { get { return BaseCommand; } set { BaseCommand = value; } } public Exception? Errors { get { return _errors; } set { _errors = value; } } public DataRow Row => _dataRow; public StatementType StatementType => _statementType; public UpdateStatus Status { get { return _status; } set { switch (value) { case UpdateStatus.Continue: case UpdateStatus.ErrorsOccurred: case UpdateStatus.SkipCurrentRow: case UpdateStatus.SkipAllRemainingRows: _status = value; break; default: throw ADP.InvalidUpdateStatus(value); } } } public DataTableMapping TableMapping => _tableMapping; } }