2 // System.Data.OleDb.OleDbDataAdapter
5 // Rodrigo Moya (rodrigo@ximian.com)
6 // Tim Coleman (tim@timcoleman.com)
8 // Copyright (C) Rodrigo Moya, 2002
9 // Copyright (C) Tim Coleman, 2002
13 using System.ComponentModel;
15 using System.Data.Common;
17 namespace System.Data.OleDb
19 public sealed class OleDbDataAdapter : DbDataAdapter, IDbDataAdapter
23 OleDbCommand deleteCommand;
24 OleDbCommand insertCommand;
25 OleDbCommand selectCommand;
26 OleDbCommand updateCommand;
27 MissingMappingAction missingMappingAction;
28 MissingSchemaAction missingSchemaAction;
34 public OleDbDataAdapter ()
35 : this (new OleDbCommand ())
39 public OleDbDataAdapter (OleDbCommand selectCommand)
41 DeleteCommand = new OleDbCommand ();
42 InsertCommand = new OleDbCommand ();
43 SelectCommand = selectCommand;
44 UpdateCommand = new OleDbCommand ();
47 public OleDbDataAdapter (string selectCommandText, OleDbConnection selectConnection)
48 : this (new OleDbCommand (selectCommandText, selectConnection))
52 public OleDbDataAdapter (string selectCommandText, string selectConnectionString)
53 : this (selectCommandText, new OleDbConnection (selectConnectionString))
61 public OleDbCommand DeleteCommand {
66 deleteCommand = value;
70 public OleDbCommand InsertCommand {
75 insertCommand = value;
79 public OleDbCommand SelectCommand {
84 selectCommand = value;
88 public OleDbCommand UpdateCommand {
93 updateCommand = value;
97 IDbCommand IDbDataAdapter.DeleteCommand {
102 if (!(value is OleDbCommand))
103 throw new ArgumentException ();
104 DeleteCommand = (OleDbCommand)value;
108 IDbCommand IDbDataAdapter.InsertCommand {
110 return InsertCommand;
113 if (!(value is OleDbCommand))
114 throw new ArgumentException ();
115 InsertCommand = (OleDbCommand)value;
119 IDbCommand IDbDataAdapter.SelectCommand {
121 return SelectCommand;
124 if (!(value is OleDbCommand))
125 throw new ArgumentException ();
126 SelectCommand = (OleDbCommand)value;
130 MissingMappingAction IDataAdapter.MissingMappingAction {
132 return missingMappingAction;
135 missingMappingAction = value;
139 MissingSchemaAction IDataAdapter.MissingSchemaAction {
141 return missingSchemaAction;
144 missingSchemaAction = value;
148 IDbCommand IDbDataAdapter.UpdateCommand {
150 return UpdateCommand;
153 if (!(value is OleDbCommand))
154 throw new ArgumentException ();
155 UpdateCommand = (OleDbCommand)value;
159 ITableMappingCollection IDataAdapter.TableMappings {
161 return TableMappings;
165 #endregion // Properties
169 protected override RowUpdatedEventArgs CreateRowUpdatedEvent (DataRow dataRow,
171 StatementType statementType,
172 DataTableMapping tableMapping)
174 return new OleDbRowUpdatedEventArgs (dataRow, command, statementType, tableMapping);
178 protected override RowUpdatingEventArgs CreateRowUpdatingEvent (DataRow dataRow,
180 StatementType statementType,
181 DataTableMapping tableMapping)
183 return new OleDbRowUpdatingEventArgs (dataRow, command, statementType, tableMapping);
186 protected override void OnRowUpdated (RowUpdatedEventArgs value)
188 if (RowUpdated != null)
189 RowUpdated (this, (OleDbRowUpdatedEventArgs) value);
192 protected override void OnRowUpdating (RowUpdatingEventArgs value)
194 if (RowUpdating != null)
195 RowUpdating (this, (OleDbRowUpdatingEventArgs) value);
198 #endregion // Methods
200 #region Events and Delegates
202 public event OleDbRowUpdatedEventHandler RowUpdated;
203 public event OleDbRowUpdatingEventHandler RowUpdating;
205 #endregion // Events and Delegates