public override IBatchCommandExecute CreateBatchCommand(BatchCommandType commandType) { switch (commandType) { case BatchCommandType.Update: return new BatchCommandUpdate(base.DataAccess); case BatchCommandType.Insert: return new BatchCommandInsert(base.DataAccess); case BatchCommandType.Upsert: return new BatchCommandUpsert(base.DataAccess); case BatchCommandType.Delsert: return new BatchCommandDelsert(base.DataAccess); default: throw new NotSupportedException(commandType.ToString()); } }