Show / Hide Table of Contents

    Interface IDbSet<T>

    An IDbSet represents the collection of all entities in the context, or that can be queried from the database, of a given type. DbSet is a concrete implementation of IDbSet.

    Namespace: Kros.KORM.Query
    Assembly: Kros.KORM.dll
    Syntax
    public interface IDbSet<T> : IEnumerable<T>, IEnumerable
    Type Parameters
    Name Description
    T

    The type that defines the set.

    Properties

    AddedItems

    List of items in Added state.

    Declaration
    IEnumerable<T> AddedItems { get; }
    Property Value
    Type Description
    System.Collections.Generic.IEnumerable<T>

    DeletedItems

    List of items in Deleted state.

    Declaration
    IEnumerable<T> DeletedItems { get; }
    Property Value
    Type Description
    System.Collections.Generic.IEnumerable<T>

    EditedItems

    List of items in Edited state.

    Declaration
    IEnumerable<T> EditedItems { get; }
    Property Value
    Type Description
    System.Collections.Generic.IEnumerable<T>

    Methods

    Add(T)

    Adds the item to the context underlying the set in the Added state such that it will be inserted into the database when CommitChanges is called.

    Declaration
    void Add(T entity)
    Parameters
    Type Name Description
    T entity

    The item to add.

    Add(IEnumerable<T>)

    Adds the items to the context underlying the set in the Added state such that it will be inserted into the database when CommitChanges is called.

    Declaration
    void Add(IEnumerable<T> entities)
    Parameters
    Type Name Description
    System.Collections.Generic.IEnumerable<T> entities

    The items to add.

    BulkInsert()

    Bulk inserts pending added items.

    Declaration
    void BulkInsert()
    Examples
                var people = database.Query<Person>().AsDbSet();
    
          foreach (var person in dataForImport)
          {
              people.Add(person);
          }
    
          people.BulkInsert();

    BulkInsert(IEnumerable<T>)

    Bulk inserts items.

    Declaration
    void BulkInsert(IEnumerable<T> items)
    Parameters
    Type Name Description
    System.Collections.Generic.IEnumerable<T> items

    The items to insert.

    BulkInsertAsync()

    Asynchronously bulk inserts pending added items.

    Declaration
    Task BulkInsertAsync()
    Returns
    Type Description
    System.Threading.Tasks.Task

    A task that represents the asynchronous bulk insert operation.

    BulkInsertAsync(IEnumerable<T>)

    Asynchronously bulk inserts items.

    Declaration
    Task BulkInsertAsync(IEnumerable<T> items)
    Parameters
    Type Name Description
    System.Collections.Generic.IEnumerable<T> items

    The items to insert.

    Returns
    Type Description
    System.Threading.Tasks.Task

    A task that represents the asynchronous bulk insert operation.

    BulkUpdate()

    Bulk updates pending edited items.

    Declaration
    void BulkUpdate()
    Examples
                var people = database.Query<Person>().AsDbSet();
    
          foreach (var person in dataForUpdate)
          {
              people.Edit(person);
          }
    
          people.BulkUpdate();

    BulkUpdate(Action<IDbConnection, IDbTransaction, String>)

    Bulk updates pending edited items with specific action.

    Declaration
    void BulkUpdate(Action<IDbConnection, IDbTransaction, string> tempTableAction)
    Parameters
    Type Name Description
    System.Action<System.Data.IDbConnection, System.Data.IDbTransaction, System.String> tempTableAction

    The action execute on temp table (modify data in temp table).

    BulkUpdate(IEnumerable<T>)

    Bulk updates items.

    Declaration
    void BulkUpdate(IEnumerable<T> items)
    Parameters
    Type Name Description
    System.Collections.Generic.IEnumerable<T> items

    The items to update.

    BulkUpdate(IEnumerable<T>, Action<IDbConnection, IDbTransaction, String>)

    Bulk updates items with specific action.

    Declaration
    void BulkUpdate(IEnumerable<T> items, Action<IDbConnection, IDbTransaction, string> tempTableAction)
    Parameters
    Type Name Description
    System.Collections.Generic.IEnumerable<T> items

    The items to update.

    System.Action<System.Data.IDbConnection, System.Data.IDbTransaction, System.String> tempTableAction

    The action execute on temp table (modify data in temp table).

    BulkUpdateAsync()

    Asynchronously bulk updates pending edited items.

    Declaration
    Task BulkUpdateAsync()
    Returns
    Type Description
    System.Threading.Tasks.Task

    A task that represents the asynchronous bulk update operation.

    BulkUpdateAsync(Action<IDbConnection, IDbTransaction, String>)

    Asyncronousky bulk updates pending edited items with specific action.

    Declaration
    Task BulkUpdateAsync(Action<IDbConnection, IDbTransaction, string> tempTableAction)
    Parameters
    Type Name Description
    System.Action<System.Data.IDbConnection, System.Data.IDbTransaction, System.String> tempTableAction

    The action execute on temp table (modify data in temp table).

    Returns
    Type Description
    System.Threading.Tasks.Task

    A task that represents the asynchronous bulk update operation.

    BulkUpdateAsync(IEnumerable<T>)

    Asyncronously bulk updates items.

    Declaration
    Task BulkUpdateAsync(IEnumerable<T> items)
    Parameters
    Type Name Description
    System.Collections.Generic.IEnumerable<T> items

    The items to update.

    Returns
    Type Description
    System.Threading.Tasks.Task

    A task that represents the asynchronous bulk update operation.

    BulkUpdateAsync(IEnumerable<T>, Action<IDbConnection, IDbTransaction, String>)

    Asynchronously bulk updates items with specific action.

    Declaration
    Task BulkUpdateAsync(IEnumerable<T> items, Action<IDbConnection, IDbTransaction, string> tempTableAction)
    Parameters
    Type Name Description
    System.Collections.Generic.IEnumerable<T> items

    The items to update.

    System.Action<System.Data.IDbConnection, System.Data.IDbTransaction, System.String> tempTableAction

    The action execute on temp table (modify data in temp table).

    Returns
    Type Description
    System.Threading.Tasks.Task

    A task that represents the asynchronous bulk update operation.

    Clear()

    Rolls back all pending changes.

    Declaration
    void Clear()

    CommitChanges()

    Commits all pending changes to the database.

    Declaration
    void CommitChanges()

    CommitChangesAsync(CancellationToken)

    Asynchronously commits all pending changes to the database.

    Declaration
    Task CommitChangesAsync(CancellationToken cancellationToken = default(CancellationToken))
    Parameters
    Type Name Description
    System.Threading.CancellationToken cancellationToken

    The token to monitor for cancellation requests.

    Returns
    Type Description
    System.Threading.Tasks.Task

    A task that represents the asynchronous save operation.

    Delete(T)

    Marks the item as Deleted such that it will be deleted from the database when CommitChanges is called.

    Declaration
    void Delete(T entity)
    Parameters
    Type Name Description
    T entity

    The item to delete.

    Delete(RawSqlString, Object[])

    Delete items by condition. These items will be deleted from the database when CommitChanges() is called.

    Declaration
    void Delete(RawSqlString condition, params object[] parameters)
    Parameters
    Type Name Description
    RawSqlString condition

    Delete condition.

    System.Object[] parameters

    Condition parameters.

    Delete(IEnumerable<T>)

    Marks the items as Deleted such that it will be deleted from the database when CommitChanges is called.

    Declaration
    void Delete(IEnumerable<T> entities)
    Parameters
    Type Name Description
    System.Collections.Generic.IEnumerable<T> entities

    The items to delete.

    Delete(Expression<Func<T, Boolean>>)

    Delete items by condition. These items will be deleted from the database when CommitChanges() is called.

    Declaration
    void Delete(Expression<Func<T, bool>> condition)
    Parameters
    Type Name Description
    System.Linq.Expressions.Expression<System.Func<T, System.Boolean>> condition

    Delete condition.

    Delete(Object)

    Marks the item id as Deleted such the item with this id will be deleted from the database when CommitChanges() is called.

    Declaration
    void Delete(object id)
    Parameters
    Type Name Description
    System.Object id

    The item id to delete.

    Exceptions
    Type Condition
    MissingPrimaryKeyException

    Delete method is not supported when entity doesn't have primary key.

    CompositePrimaryKeyException

    Delete method is not supported when entity has composite primary key.

    System.ArgumentException

    When type of id is different from primary key property type.

    Edit(T)

    Marks the item as Edited such that it will be updated in the database when CommitChanges is called.

    Declaration
    void Edit(T entity)
    Parameters
    Type Name Description
    T entity

    The item to edit.

    Edit(IEnumerable<T>)

    Marks the items as Edited such that it will be updated in the database when CommitChanges is called.

    Declaration
    void Edit(IEnumerable<T> entities)
    Parameters
    Type Name Description
    System.Collections.Generic.IEnumerable<T> entities

    The items to edit.

    Back to top KROS a.s.