Search Results for

    Show / Hide Table of Contents

    Class Context

    Inheritance
    object
    Context
    EntityContext
    Implements
    IDisposable
    IAsyncDisposable
    Inherited Members
    object.GetType()
    object.MemberwiseClone()
    object.ToString()
    object.Equals(object)
    object.Equals(object, object)
    object.ReferenceEquals(object, object)
    object.GetHashCode()
    Namespace: LemonEdge.Connections.Database.Context
    Assembly: LemonEdge.Database.Connector.dll
    Syntax
    public abstract class Context : IDisposable, IAsyncDisposable

    Constructors

    Context(IDataAccessor, IApplicationDbContextFactory, IDatabaseCacheFactory, IDatabaseConnectorServiceContext)

    Declaration
    protected Context(IDataAccessor accessor, IApplicationDbContextFactory dbContextFactory, IDatabaseCacheFactory cacheFactory, IDatabaseConnectorServiceContext services)
    Parameters
    Type Name Description
    IDataAccessor accessor
    IApplicationDbContextFactory dbContextFactory
    IDatabaseCacheFactory cacheFactory
    IDatabaseConnectorServiceContext services

    Fields

    DatabaseCacheFactory

    Declaration
    protected readonly IDatabaseCacheFactory DatabaseCacheFactory
    Field Value
    Type Description
    IDatabaseCacheFactory

    _deletesModified

    Declaration
    protected Dictionary<(Guid, Type), IBaseEntity> _deletesModified
    Field Value
    Type Description
    Dictionary<(Guid, Type), IBaseEntity>

    _insertsModified

    Declaration
    protected List<IBaseEntity> _insertsModified
    Field Value
    Type Description
    List<IBaseEntity>

    _updatesModified

    Declaration
    protected List<IBaseEntity> _updatesModified
    Field Value
    Type Description
    List<IBaseEntity>

    Properties

    Accessor

    Declaration
    public IDataAccessor Accessor { get; }
    Property Value
    Type Description
    IDataAccessor

    Cache

    Declaration
    public virtual IReadOnlyCache Cache { get; set; }
    Property Value
    Type Description
    IReadOnlyCache

    CanvasID

    Declaration
    public Guid? CanvasID { get; set; }
    Property Value
    Type Description
    Guid?

    CommandTimeout

    Declaration
    public int CommandTimeout { get; }
    Property Value
    Type Description
    int

    CommitedDateTime

    Declaration
    protected DateTimeOffset? CommitedDateTime { get; }
    Property Value
    Type Description
    DateTimeOffset?

    Connection

    Declaration
    public IDbConnection Connection { get; }
    Property Value
    Type Description
    IDbConnection

    HasChanges

    Declaration
    public virtual bool HasChanges { get; }
    Property Value
    Type Description
    bool

    IsBusy

    Declaration
    protected virtual bool IsBusy { get; }
    Property Value
    Type Description
    bool

    IsDisposed

    Declaration
    public bool IsDisposed { get; }
    Property Value
    Type Description
    bool

    PromotingItemsFromCanvas

    Declaration
    protected bool PromotingItemsFromCanvas { get; set; }
    Property Value
    Type Description
    bool

    SafeID

    Declaration
    public Guid? SafeID { get; set; }
    Property Value
    Type Description
    Guid?

    Services

    Declaration
    public IDatabaseConnectorServiceContext Services { get; }
    Property Value
    Type Description
    IDatabaseConnectorServiceContext

    Transaction

    Declaration
    public IDbTransaction Transaction { get; }
    Property Value
    Type Description
    IDbTransaction

    User

    Declaration
    public UserInfo User { get; }
    Property Value
    Type Description
    UserInfo

    Methods

    AddCustomActionToSaveComplete(Func<IEntityUpdater, Task>)

    Declaration
    public void AddCustomActionToSaveComplete(Func<IEntityUpdater, Task> saveCompleteCallback)
    Parameters
    Type Name Description
    Func<IEntityUpdater, Task> saveCompleteCallback

    AddCustomSQLToEnd(string)

    Declaration
    public void AddCustomSQLToEnd(string sql)
    Parameters
    Type Name Description
    string sql

    AddCustomSQLToStart(string)

    Declaration
    public void AddCustomSQLToStart(string sql)
    Parameters
    Type Name Description
    string sql

    AddSaveDateTimeStampHandler(Action<DateTimeOffset>)

    Declaration
    public void AddSaveDateTimeStampHandler(Action<DateTimeOffset> commitDateTimeStampHandler)
    Parameters
    Type Name Description
    Action<DateTimeOffset> commitDateTimeStampHandler

    AddToSaveDeleteOfItem(IBaseEntity)

    Declaration
    public void AddToSaveDeleteOfItem(IBaseEntity item)
    Parameters
    Type Name Description
    IBaseEntity item

    AddToSaveInsertOfItem(IBaseEntity)

    Declaration
    public void AddToSaveInsertOfItem(IBaseEntity item)
    Parameters
    Type Name Description
    IBaseEntity item

    AddToSaveUpdateOfItem(IBaseEntity)

    Declaration
    public void AddToSaveUpdateOfItem(IBaseEntity item)
    Parameters
    Type Name Description
    IBaseEntity item

    BypassItemValidation(IBaseEntity)

    Indicates this item should be ignored in validations

    Typically used by base item where the validation is already performed by the inheriting object

    Declaration
    public void BypassItemValidation(IBaseEntity item)
    Parameters
    Type Name Description
    IBaseEntity item

    The item to skip validations of

    ClearChanges()

    Declaration
    public virtual void ClearChanges()

    Dispose()

    Declaration
    public void Dispose()

    Dispose(bool)

    Declaration
    protected virtual void Dispose(bool disposing)
    Parameters
    Type Name Description
    bool disposing

    DisposeAsync()

    Declaration
    public ValueTask DisposeAsync()
    Returns
    Type Description
    ValueTask

    DisposeAsyncCore()

    Declaration
    protected virtual ValueTask DisposeAsyncCore()
    Returns
    Type Description
    ValueTask

    GetCanvas()

    Declaration
    public ICanvas GetCanvas()
    Returns
    Type Description
    ICanvas

    InitUser(UserInfo)

    Declaration
    protected void InitUser(UserInfo user)
    Parameters
    Type Name Description
    UserInfo user

    InternalClearOnFail()

    Declaration
    protected virtual void InternalClearOnFail()

    IsItemAlreadyInDelete(IBaseEntity)

    Declaration
    public bool IsItemAlreadyInDelete(IBaseEntity item)
    Parameters
    Type Name Description
    IBaseEntity item
    Returns
    Type Description
    bool

    IsSameTypeForDatabaseTables(IBaseEntity, IBaseEntity)

    Declaration
    protected virtual bool IsSameTypeForDatabaseTables(IBaseEntity item, IBaseEntity other)
    Parameters
    Type Name Description
    IBaseEntity item
    IBaseEntity other
    Returns
    Type Description
    bool

    OnSaveComplete()

    Declaration
    public virtual Task OnSaveComplete()
    Returns
    Type Description
    Task

    PerformCustomInitializations()

    Declaration
    protected virtual void PerformCustomInitializations()

    PerformValidations()

    Declaration
    protected virtual Task PerformValidations()
    Returns
    Type Description
    Task

    SetTimeout(int?)

    Declaration
    public void SetTimeout(int? seconds)
    Parameters
    Type Name Description
    int? seconds

    UseCanvas(Guid)

    Declaration
    public abstract IEntityRetriever UseCanvas(Guid canvasId)
    Parameters
    Type Name Description
    Guid canvasId
    Returns
    Type Description
    IEntityRetriever

    UseTransaction(DbTransaction)

    Declaration
    public void UseTransaction(DbTransaction transaction)
    Parameters
    Type Name Description
    DbTransaction transaction

    Implements

    IDisposable
    IAsyncDisposable

    Extension Methods

    LinqExtensions.AsArray<T>(T)
    LinqExtensions.ToArrayOfOne<T>(T)
    LinqExtensions.ToListOfOne<T>(T)
    MiscExtensions.SetIfNotEqual<T, TP>(T, Expression<Func<T, TP>>, TP)
    WeakReferenceExtensions.WeakReference(object)
    SQLExtensions.ToSQLValue(object, bool)
    ReflectionExtensions.ClearEventInvocations(object, string)
    StringExtensions.ToCSVFormatString(object, Type)
    In this article
    Back to top © LemonEdge Technologies. All rights reserved.