public int Delete(IAdfQuery query)
{
if (query == null) throw new ArgumentNullException("query");
using (var connection = Provider.GetConnection(DataSource))
{
using (var command = Provider.GetCommand(DataSource, connection, query))
{
try
{
if (connection.State == ConnectionState.Closed) connection.Open();
return command.ExecuteNonQuery();
}
catch (Exception exception)
{
Provider.HandleException(exception, DataSource, query);
return 0;
}
}
}
}