Class DbObject<TEntity>
OptimaJet.Workflow.DbPersistence.DbObject<TEntity>
Namespace: OptimaJet.Workflow.DbPersistence
public class DbObject<TEntity> where TEntity : IEntity, new()Inheritance
- System.Object
Constructors
public DbObject(string schemaName, string dbTableName, int commandTimeout) #Parameters
Name
Type
Description
schemaNameStringdbTableNameStringcommandTimeoutInt32Properties
Methods
public Task<int> InsertAsync(SqlConnection connection, TEntity entity, SqlTransaction transaction = null) #Parameters
Name
Type
Description
connectionSqlConnectionentity{TEntity}transactionSqlTransactionReturns
Type
Description
Task<Int32>public virtual Task<int> UpsertAsync(SqlConnection connection, TEntity entity, SqlTransaction transaction = null) #Parameters
Name
Type
Description
connectionSqlConnectionentity{TEntity}transactionSqlTransactionReturns
Type
Description
Task<Int32>public Task<int> UpdateAsync(SqlConnection connection, TEntity entity, SqlTransaction transaction = null) #Parameters
Name
Type
Description
connectionSqlConnectionentity{TEntity}transactionSqlTransactionReturns
Type
Description
Task<Int32>public Task<TEntity[]> SelectAllAsync(SqlConnection connection) #Parameters
Name
Type
Description
connectionSqlConnectionReturns
Type
Description
Task<{TEntity}[]>public Task<TEntity[]> SelectAllWithPagingAsync(SqlConnection connection, List<(string parameterName, SortDirection sortDirection)> orderParameters, Paging paging) #Parameters
Name
Type
Description
connectionSqlConnectionorderParametersList<SortDirection>pagingPagingReturns
Type
Description
Task<{TEntity}[]>public Task<TEntity[]> SelectByAsync<TSelect>(SqlConnection connection, Expression<Func<TEntity, TSelect>> selectorLambda, TSelect value) #Parameters
Name
Type
Description
connectionSqlConnectionselectorLambdaExpression<Func{{TEntity},{TSelect>value{TSelect}Returns
Type
Description
Task<{TEntity}[]>public Task<int> DeleteByAsync<TSelect>(SqlConnection connection, Expression<Func<TEntity, TSelect>> selectorLambda, TSelect value, SqlTransaction transaction = null) #Parameters
Name
Type
Description
connectionSqlConnectionselectorLambdaExpression<Func{{TEntity},{TSelect>value{TSelect}transactionSqlTransactionReturns
Type
Description
Task<Int32>public Task<TEntity[]> SelectByWithPagingAsync<TSelect, TSort>(SqlConnection connection, Expression<Func<TEntity, TSelect>> selectorLambda, TSelect value, Expression<Func<TEntity, TSort>> sortLambda, SortDirection sortDirection, Paging paging) #Parameters
Name
Type
Description
connectionSqlConnectionselectorLambdaExpression<Func{{TEntity},{TSelect>value{TSelect}sortLambdaExpression<Func{{TEntity},{TSort>sortDirectionSortDirectionpagingPagingReturns
Type
Description
Task<{TEntity}[]>public Task<TEntity> SelectByKeyAsync(SqlConnection connection, object id) #Parameters
Name
Type
Description
connectionSqlConnectionidObjectReturns
Type
Description
Task<TEntity>public Task<int> GetCountAsync(SqlConnection connection) #Parameters
Name
Type
Description
connectionSqlConnectionReturns
Type
Description
Task<Int32>public Task<int> GetCountByAsync<TSelect>(SqlConnection connection, Expression<Func<TEntity, TSelect>> selectorLambda, TSelect value, SqlTransaction transaction = null) #Parameters
Name
Type
Description
connectionSqlConnectionselectorLambdaExpression<Func{{TEntity},{TSelect>value{TSelect}transactionSqlTransactionReturns
Type
Description
Task<Int32>public Task<int> DeleteAsync(SqlConnection connection, object id, SqlTransaction transaction = null) #Parameters
Name
Type
Description
connectionSqlConnectionidObjecttransactionSqlTransactionReturns
Type
Description
Task<Int32>public Task<TEntity[]> SelectAsync(SqlConnection connection, string commandText, params SqlParameter[] parameters) #Parameters
Name
Type
Description
connectionSqlConnectioncommandTextStringparametersSqlParameter[]Returns
Type
Description
Task<{TEntity}[]>public Task<TEntity[]> SelectAsync(SqlConnection connection, string commandText, SqlTransaction transaction, params SqlParameter[] parameters) #Parameters
Name
Type
Description
connectionSqlConnectioncommandTextStringtransactionSqlTransactionparametersSqlParameter[]Returns
Type
Description
Task<{TEntity}[]>public Task<List<Dictionary<string, object>>> SelectAsDictionaryAsync(SqlConnection connection, string commandText, params SqlParameter[] parameters) #Parameters
Name
Type
Description
connectionSqlConnectioncommandTextStringparametersSqlParameter[]Returns
Type
Description
Task<Object>public Task<int> ExecuteCommandNonQueryAsync(SqlConnection connection, string commandText, params SqlParameter[] parameters) #Parameters
Name
Type
Description
connectionSqlConnectioncommandTextStringparametersSqlParameter[]Returns
Type
Description
Task<Int32>public Task<int> ExecuteCommandNonQueryAsync(SqlConnection connection, string commandText, SqlTransaction transaction = null, params SqlParameter[] parameters) #Parameters
Name
Type
Description
connectionSqlConnectioncommandTextStringtransactionSqlTransactionparametersSqlParameter[]Returns
Type
Description
Task<Int32>public Task<object> ExecuteCommandScalarAsync(SqlConnection connection, string commandText, params SqlParameter[] parameters) #Parameters
Name
Type
Description
connectionSqlConnectioncommandTextStringparametersSqlParameter[]Returns
Type
Description
Task<Object>public Task<object> ExecuteCommandScalarAsync(SqlConnection connection, string commandText, SqlTransaction transaction = null, params SqlParameter[] parameters) #Parameters
Name
Type
Description
connectionSqlConnectioncommandTextStringtransactionSqlTransactionparametersSqlParameter[]Returns
Type
Description
Task<Object>public Task<int> InsertAllAsync(SqlConnection connection, TEntity[] entities, SqlTransaction transaction = null) #Parameters
Name
Type
Description
connectionSqlConnectionentities{TEntity}[]transactionSqlTransactionReturns
Type
Description
Task<Int32>public static object ConvertToDbCompatibilityType(object obj) #Parameters
Name
Type
Description
objObjectReturns
Type
Description
Objectpublic virtual SqlParameter CreateParameter(TEntity entity, ColumnInfo column, string namePrefix = "") #Parameters
Name
Type
Description
entity{TEntity}columnColumnInfonamePrefixStringReturns
Type
Description
SqlParameterpublic string GetKeyOrFirstColumn() #Returns
Type
Description
String