internal BulkOptions PrepareBulkOptions(BulkOptions options) { if (options == null) { return(BulkOptions.Clone().SetDefaults()); } var opt = ContextProvider.GetTyped(options, out var needClone); if (needClone) { opt = opt.Clone(); } return(opt.SetDefaults(BulkOptions).SetDefaults()); }
public void UsingTransaction(IsolationLevel isolationLevel, Action <TransactionContext> action) { DbTransaction tran = null; try { tran = Connection.BeginTransaction(isolationLevel); action(ContextProvider.GetTransactionContext(tran, QueryOptions, BulkOptions, ReadOptions)); tran.Commit(); } catch { if (tran != null) { tran.Rollback(); } throw; } }
public async Task UsingTransactionAsync(IsolationLevel isolationLevel, Func <TransactionContext, Task> action) { DbTransaction tran = null; try { tran = Connection.BeginTransaction(isolationLevel); await action(ContextProvider.GetTransactionContext(tran, QueryOptions, BulkOptions, ReadOptions)).ConfigureAwait(false); tran.Commit(); } catch { if (tran != null) { tran.Rollback(); } throw; } }
protected internal TransactionContext(ContextProvider contextProvider, DbTransaction transaction, QueryOptions queryOptions, BulkOptions bulkOptions, ReadOptions readOptions) : base(contextProvider, queryOptions, bulkOptions, readOptions) { this.Transaction = transaction; }
protected internal ConnectionContext(ContextProvider contextProvider, DbConnection connection, QueryOptions queryOptions, BulkOptions bulkOptions, ReadOptions readOptions) : base(contextProvider, queryOptions, bulkOptions, readOptions) { this.Connection = connection; }
protected internal ConnectionStringContext(ContextProvider contextProvider, string connectionString, QueryOptions queryOptions, BulkOptions bulkOptions, ReadOptions readOptions) : base(contextProvider, queryOptions, bulkOptions, readOptions) { this.ConnectionString = connectionString; }
public CommandCompilator(ContextProvider contextProvider) { this.contextProvider = contextProvider; }
protected internal ScopedContext(ContextProvider contextProvider, QueryOptions queryOptions, BulkOptions bulkOptions, ReadOptions readOptions) : base(contextProvider, queryOptions, bulkOptions, readOptions) { }