Workflow Engine .NET

Assembly: OptimaJet.Workflow.MSSQL

Class DbObject<TEntity>

OptimaJet.Workflow.DbPersistence.DbObject<TEntity>

public class DbObject<TEntity> where TEntity : IEntity, new()

Inheritance

  • System.Object

Constructors

public DbObject(string schemaName, string dbTableName, int commandTimeout) #

Parameters

Name
Type
Description
schemaName
String
dbTableName
String
commandTimeout
Int32

Properties

Name
Type
CommandTimeout #
Int32
SchemaName #
String
DbTableName #
String
ObjectName #
String

Methods

public Task<int> InsertAsync(SqlConnection connection, TEntity entity, SqlTransaction transaction = null) #

Parameters

Name
Type
Description
connection
SqlConnection
entity
{TEntity}
transaction
SqlTransaction

Returns

Type
Description
Task<Int32>
public virtual Task<int> UpsertAsync(SqlConnection connection, TEntity entity, SqlTransaction transaction = null) #

Parameters

Name
Type
Description
connection
SqlConnection
entity
{TEntity}
transaction
SqlTransaction

Returns

Type
Description
Task<Int32>
public Task<int> UpdateAsync(SqlConnection connection, TEntity entity, SqlTransaction transaction = null) #

Parameters

Name
Type
Description
connection
SqlConnection
entity
{TEntity}
transaction
SqlTransaction

Returns

Type
Description
Task<Int32>
public Task<TEntity[]> SelectAllAsync(SqlConnection connection) #

Parameters

Name
Type
Description
connection
SqlConnection

Returns

Type
Description
Task<{TEntity}[]>
public Task<TEntity[]> SelectAllWithPagingAsync(SqlConnection connection, List<(string parameterName, SortDirection sortDirection)> orderParameters, Paging paging) #

Parameters

Name
Type
Description
connection
SqlConnection
orderParameters
List<SortDirection>
paging
Paging

Returns

Type
Description
Task<{TEntity}[]>
public Task<TEntity[]> SelectByAsync<TSelect>(SqlConnection connection, Expression<Func<TEntity, TSelect>> selectorLambda, TSelect value) #

Parameters

Name
Type
Description
connection
SqlConnection
selectorLambda
Expression<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
connection
SqlConnection
selectorLambda
Expression<Func{{TEntity},{TSelect>
value
{TSelect}
transaction
SqlTransaction

Returns

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
connection
SqlConnection
selectorLambda
Expression<Func{{TEntity},{TSelect>
value
{TSelect}
sortLambda
Expression<Func{{TEntity},{TSort>
sortDirection
SortDirection
paging
Paging

Returns

Type
Description
Task<{TEntity}[]>
public Task<TEntity> SelectByKeyAsync(SqlConnection connection, object id) #

Parameters

Name
Type
Description
connection
SqlConnection
id
Object

Returns

Type
Description
Task<TEntity>
public Task<int> GetCountAsync(SqlConnection connection) #

Parameters

Name
Type
Description
connection
SqlConnection

Returns

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
connection
SqlConnection
selectorLambda
Expression<Func{{TEntity},{TSelect>
value
{TSelect}
transaction
SqlTransaction

Returns

Type
Description
Task<Int32>
public Task<int> DeleteAsync(SqlConnection connection, object id, SqlTransaction transaction = null) #

Parameters

Name
Type
Description
connection
SqlConnection
id
Object
transaction
SqlTransaction

Returns

Type
Description
Task<Int32>
public Task<TEntity[]> SelectAsync(SqlConnection connection, string commandText, params SqlParameter[] parameters) #

Parameters

Name
Type
Description
connection
SqlConnection
commandText
String
parameters
SqlParameter[]

Returns

Type
Description
Task<{TEntity}[]>
public Task<TEntity[]> SelectAsync(SqlConnection connection, string commandText, SqlTransaction transaction, params SqlParameter[] parameters) #

Parameters

Name
Type
Description
connection
SqlConnection
commandText
String
transaction
SqlTransaction
parameters
SqlParameter[]

Returns

Type
Description
Task<{TEntity}[]>
public Task<List<Dictionary<string, object>>> SelectAsDictionaryAsync(SqlConnection connection, string commandText, params SqlParameter[] parameters) #

Parameters

Name
Type
Description
connection
SqlConnection
commandText
String
parameters
SqlParameter[]

Returns

Type
Description
Task<Object>
public Task<int> ExecuteCommandNonQueryAsync(SqlConnection connection, string commandText, params SqlParameter[] parameters) #

Parameters

Name
Type
Description
connection
SqlConnection
commandText
String
parameters
SqlParameter[]

Returns

Type
Description
Task<Int32>
public Task<int> ExecuteCommandNonQueryAsync(SqlConnection connection, string commandText, SqlTransaction transaction = null, params SqlParameter[] parameters) #

Parameters

Name
Type
Description
connection
SqlConnection
commandText
String
transaction
SqlTransaction
parameters
SqlParameter[]

Returns

Type
Description
Task<Int32>
public Task<object> ExecuteCommandScalarAsync(SqlConnection connection, string commandText, params SqlParameter[] parameters) #

Parameters

Name
Type
Description
connection
SqlConnection
commandText
String
parameters
SqlParameter[]

Returns

Type
Description
Task<Object>
public Task<object> ExecuteCommandScalarAsync(SqlConnection connection, string commandText, SqlTransaction transaction = null, params SqlParameter[] parameters) #

Parameters

Name
Type
Description
connection
SqlConnection
commandText
String
transaction
SqlTransaction
parameters
SqlParameter[]

Returns

Type
Description
Task<Object>
public Task<int> InsertAllAsync(SqlConnection connection, TEntity[] entities, SqlTransaction transaction = null) #

Parameters

Name
Type
Description
connection
SqlConnection
entities
{TEntity}[]
transaction
SqlTransaction

Returns

Type
Description
Task<Int32>
public static object ConvertToDbCompatibilityType(object obj) #

Parameters

Name
Type
Description
obj
Object

Returns

Type
Description
Object
public virtual SqlParameter CreateParameter(TEntity entity, ColumnInfo column, string namePrefix = "") #

Parameters

Name
Type
Description
entity
{TEntity}
column
ColumnInfo
namePrefix
String

Returns

Type
Description
SqlParameter
public string GetKeyOrFirstColumn() #

Returns

Type
Description
String

Fields

public static List<ColumnInfo> DBColumnsStatic #
public List<ColumnInfo> DBColumns #