Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
using System;
using System.Data;
using System.Data.Common;
namespace DotNetDataProviderTemplate
{
public class TemplateDataAdapter : DbDataAdapter, IDbDataAdapter
{
private TemplateCommand m_selectCommand;
private TemplateCommand m_insertCommand;
private TemplateCommand m_updateCommand;
private TemplateCommand m_deleteCommand;
/*
* Inherit from Component through DbDataAdapter. The event
* mechanism is designed to work with the Component.Events
* property. These variables are the keys used to find the
* events in the components list of events.
*/
static private readonly object EventRowUpdated = new object();
static private readonly object EventRowUpdating = new object();
public TemplateDataAdapter()
{
}
public TemplateCommand SelectCommand
{
get { return m_selectCommand; }
set { m_selectCommand = value; }
}
IDbCommand IDbDataAdapter.SelectCommand
{
get { return m_selectCommand; }
set { m_selectCommand = (TemplateCommand)value; }
}
public TemplateCommand InsertCommand
{
get { return m_insertCommand; }
set { m_insertCommand = value; }
}
IDbCommand IDbDataAdapter.InsertCommand
{
get { return m_insertCommand; }
set { m_insertCommand = (TemplateCommand)value; }
}
public TemplateCommand UpdateCommand
{
get { return m_updateCommand; }
set { m_updateCommand = value; }
}
IDbCommand IDbDataAdapter.UpdateCommand
{
get { return m_updateCommand; }
set { m_updateCommand = (TemplateCommand)value; }
}
public TemplateCommand DeleteCommand
{
get { return m_deleteCommand; }
set { m_deleteCommand = value; }
}
IDbCommand IDbDataAdapter.DeleteCommand
{
get { return m_deleteCommand; }
set { m_deleteCommand = (TemplateCommand)value; }
}
/*
* Implement abstract methods inherited from DbDataAdapter.
*/
override protected RowUpdatedEventArgs CreateRowUpdatedEvent(DataRow dataRow, IDbCommand command, StatementType statementType, DataTableMapping tableMapping)
{
return new TemplateRowUpdatedEventArgs(dataRow, command, statementType, tableMapping);
}
override protected RowUpdatingEventArgs CreateRowUpdatingEvent(DataRow dataRow, IDbCommand command, StatementType statementType, DataTableMapping tableMapping)
{
return new TemplateRowUpdatingEventArgs(dataRow, command, statementType, tableMapping);
}
override protected void OnRowUpdating(RowUpdatingEventArgs value)
{
TemplateRowUpdatingEventHandler handler = (TemplateRowUpdatingEventHandler) Events[EventRowUpdating];
if ((null != handler) && (value is TemplateRowUpdatingEventArgs))
{
handler(this, (TemplateRowUpdatingEventArgs) value);
}
}
override protected void OnRowUpdated(RowUpdatedEventArgs value)
{
TemplateRowUpdatedEventHandler handler = (TemplateRowUpdatedEventHandler) Events[EventRowUpdated];
if ((null != handler) && (value is TemplateRowUpdatedEventArgs))
{
handler(this, (TemplateRowUpdatedEventArgs) value);
}
}
public event TemplateRowUpdatingEventHandler RowUpdating
{
add { Events.AddHandler(EventRowUpdating, value); }
remove { Events.RemoveHandler(EventRowUpdating, value); }
}
public event TemplateRowUpdatedEventHandler RowUpdated
{
add { Events.AddHandler(EventRowUpdated, value); }
remove { Events.RemoveHandler(EventRowUpdated, value); }
}
}
public delegate void TemplateRowUpdatingEventHandler(object sender, TemplateRowUpdatingEventArgs e);
public delegate void TemplateRowUpdatedEventHandler(object sender, TemplateRowUpdatedEventArgs e);
public class TemplateRowUpdatingEventArgs : RowUpdatingEventArgs
{
public TemplateRowUpdatingEventArgs(DataRow row, IDbCommand command, StatementType statementType, DataTableMapping tableMapping)
: base(row, command, statementType, tableMapping)
{
}
// Hide the inherited implementation of the command property.
new public TemplateCommand Command
{
get { return (TemplateCommand)base.Command; }
set { base.Command = value; }
}
}
public class TemplateRowUpdatedEventArgs : RowUpdatedEventArgs
{
public TemplateRowUpdatedEventArgs(DataRow row, IDbCommand command, StatementType statementType, DataTableMapping tableMapping)
: base(row, command, statementType, tableMapping)
{
}
// Hide the inherited implementation of the command property.
new public TemplateCommand Command
{
get { return (TemplateCommand)base.Command; }
}
}
}