| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175 |
- //
- // System.Data.SqlClient.SqlDataAdapter.cs
- //
- // Author:
- // Rodrigo Moya ([email protected])
- // Daniel Morgan ([email protected])
- // Tim Coleman ([email protected])
- //
- // (C) Ximian, Inc 2002
- // Copyright (C) 2002 Tim Coleman
- //
- using System;
- using System.ComponentModel;
- using System.Data;
- using System.Data.Common;
- namespace System.Data.SqlClient
- {
- /// <summary>
- /// Represents a set of command-related properties that are used
- /// to fill the DataSet and update a data source, all this
- /// from a SQL database.
- /// </summary>
- public sealed class SqlDataAdapter : DbDataAdapter, IDbDataAdapter
- {
- #region Fields
-
- SqlCommand deleteCommand;
- SqlCommand insertCommand;
- SqlCommand selectCommand;
- SqlCommand updateCommand;
- static readonly object EventRowUpdated = new object();
- static readonly object EventRowUpdating = new object();
- #endregion
- #region Constructors
-
- public SqlDataAdapter ()
- : this (new SqlCommand ())
- {
- }
- public SqlDataAdapter (SqlCommand selectCommand)
- {
- DeleteCommand = new SqlCommand ();
- InsertCommand = new SqlCommand ();
- SelectCommand = selectCommand;
- UpdateCommand = new SqlCommand ();
- }
- public SqlDataAdapter (string selectCommandText, SqlConnection selectConnection)
- : this (new SqlCommand (selectCommandText, selectConnection))
- {
- }
- public SqlDataAdapter (string selectCommandText, string selectConnectionString)
- : this (selectCommandText, new SqlConnection (selectConnectionString))
- {
- }
- #endregion
- #region Properties
- public SqlCommand DeleteCommand {
- get { return deleteCommand; }
- set { deleteCommand = value; }
- }
- public SqlCommand InsertCommand {
- get { return insertCommand; }
- set { insertCommand = value; }
- }
- public SqlCommand SelectCommand {
- get { return selectCommand; }
- set { selectCommand = value; }
- }
- public SqlCommand UpdateCommand {
- get { return updateCommand; }
- set { updateCommand = value; }
- }
- IDbCommand IDbDataAdapter.DeleteCommand {
- get { return DeleteCommand; }
- set {
- if (!(value is SqlCommand))
- throw new ArgumentException ();
- DeleteCommand = (SqlCommand)value;
- }
- }
- IDbCommand IDbDataAdapter.InsertCommand {
- get { return InsertCommand; }
- set {
- if (!(value is SqlCommand))
- throw new ArgumentException ();
- InsertCommand = (SqlCommand)value;
- }
- }
- IDbCommand IDbDataAdapter.SelectCommand {
- get { return SelectCommand; }
- set {
- if (!(value is SqlCommand))
- throw new ArgumentException ();
- SelectCommand = (SqlCommand)value;
- }
- }
- IDbCommand IDbDataAdapter.UpdateCommand {
- get { return UpdateCommand; }
- set {
- if (!(value is SqlCommand))
- throw new ArgumentException ();
- UpdateCommand = (SqlCommand)value;
- }
- }
- ITableMappingCollection IDataAdapter.TableMappings {
- get { return TableMappings; }
- }
- #endregion // Properties
- #region Methods
- protected override RowUpdatedEventArgs CreateRowUpdatedEvent (DataRow dataRow, IDbCommand command, StatementType statementType, DataTableMapping tableMapping)
- {
- return new SqlRowUpdatedEventArgs (dataRow, command, statementType, tableMapping);
- }
- protected override RowUpdatingEventArgs CreateRowUpdatingEvent (DataRow dataRow, IDbCommand command, StatementType statementType, DataTableMapping tableMapping)
- {
- return new SqlRowUpdatingEventArgs (dataRow, command, statementType, tableMapping);
- }
- protected override void OnRowUpdated (RowUpdatedEventArgs value)
- {
- SqlRowUpdatedEventHandler handler = (SqlRowUpdatedEventHandler) Events[EventRowUpdated];
- if ((handler != null) && (value is SqlRowUpdatedEventArgs))
- handler(this, (SqlRowUpdatedEventArgs) value);
- }
- protected override void OnRowUpdating (RowUpdatingEventArgs value)
- {
- SqlRowUpdatingEventHandler handler = (SqlRowUpdatingEventHandler) Events[EventRowUpdating];
- if ((handler != null) && (value is SqlRowUpdatingEventArgs))
- handler(this, (SqlRowUpdatingEventArgs) value);
- }
- #endregion // Methods
- #region Events and Delegates
- public event SqlRowUpdatedEventHandler RowUpdated {
- add { Events.AddHandler (EventRowUpdated, value); }
- remove { Events.RemoveHandler (EventRowUpdated, value); }
- }
- public event SqlRowUpdatingEventHandler RowUpdating {
- add { Events.AddHandler (EventRowUpdating, value); }
- remove { Events.RemoveHandler (EventRowUpdating, value); }
- }
- #endregion // Events and Delegates
- }
- }
|