| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149 |
- //------------------------------------------------------------------------------
- // <copyright file="RowUpdatedEventArgs.cs" company="Microsoft">
- // Copyright (c) Microsoft Corporation. All rights reserved.
- // </copyright>
- // <owner current="true" primary="true">Microsoft</owner>
- // <owner current="true" primary="false">Microsoft</owner>
- //------------------------------------------------------------------------------
- namespace System.Data.Common {
- using System;
- using System.ComponentModel;
- using System.Collections;
- using System.Data;
- /*
- public delegate void RowUpdatedEventHandler(object sender, RowUpdatedEventArgs e);
- */
- public class RowUpdatedEventArgs : System.EventArgs {
- private IDbCommand _command;
- private StatementType _statementType;
- private DataTableMapping _tableMapping;
- private Exception _errors;
- private DataRow _dataRow;
- private DataRow[] _dataRows;
- private UpdateStatus _status; // UpdateStatus.Continue; /*0*/
- private int _recordsAffected;
- public RowUpdatedEventArgs(DataRow dataRow, IDbCommand command, StatementType statementType, DataTableMapping tableMapping) {
- switch(statementType) {
- case StatementType.Select:
- case StatementType.Insert:
- case StatementType.Update:
- case StatementType.Delete:
- case StatementType.Batch:
- break;
- default:
- throw ADP.InvalidStatementType(statementType);
- }
- _dataRow = dataRow;
- _command = command;
- _statementType = statementType;
- _tableMapping = tableMapping;
- }
- public IDbCommand Command {
- get {
- return _command;
- }
- }
- public Exception Errors {
- get {
- return _errors;
- }
- set {
- _errors = value;
- }
- }
- public int RecordsAffected {
- get {
- return _recordsAffected;
- }
- }
- public DataRow Row {
- get {
- return _dataRow;
- }
- }
- internal DataRow[] Rows {
- get {
- return _dataRows;
- }
- }
- public int RowCount {
- get {
- DataRow[] dataRows = _dataRows;
- return ((null != dataRows) ? dataRows.Length : ((null != _dataRow) ? 1 : 0));
- }
- }
- public StatementType StatementType {
- get {
- return _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 {
- get {
- return _tableMapping;
- }
- }
- internal void AdapterInit(DataRow[] dataRows) {
- _statementType = StatementType.Batch;
- _dataRows = dataRows;
- if ((null != dataRows) && (1 == dataRows.Length)) { // WebData 100063
- _dataRow = dataRows[0];
- }
- }
- internal void AdapterInit(int recordsAffected) {
- _recordsAffected = recordsAffected;
- }
- public void CopyToRows(DataRow[] array) {
- CopyToRows(array, 0);
- }
- public void CopyToRows(DataRow[] array, int arrayIndex) {
- DataRow[] dataRows = _dataRows;
- if (null != dataRows) {
- dataRows.CopyTo(array, arrayIndex);
- }
- else {
- if (null == array) {
- throw ADP.ArgumentNull("array");
- }
- array[arrayIndex] = Row;
- }
- }
- }
- }
|