Class ListProviderBase

Assembly: redb.Core.dll

Base class for IListProvider implementations.
Contains all business logic for list and list item operations with caching.
SQL queries are abstracted via ISqlDialect.

public abstract class ListProviderBase : IListProvider

Inheritance

ObjectListProviderBase

Implements

Derived

Methods

AddItemsAsync(IRedbList, IEnumerable<IRedbListItem>)

Add multiple items from ready objects.

public Task<List<RedbListItem>> AddItemsAsync(IRedbList list, IEnumerable<IRedbListItem> items)

AddItemsAsync(IRedbList, IEnumerable<string>, IEnumerable<string>?)

Add multiple items from string values (convenience method).

public Task<List<RedbListItem>> AddItemsAsync(IRedbList list, IEnumerable<string> values, IEnumerable<string>? aliases = null)

DeleteListAsync(long)

public Task<bool> DeleteListAsync(long listId)

DeleteListItemAsync(long)

public Task<bool> DeleteListItemAsync(long itemId)

GetAllListsAsync()

public Task<List<RedbList>> GetAllListsAsync()

GetItemsByObjectReferenceAsync(long)

public Task<List<RedbListItem>> GetItemsByObjectReferenceAsync(long objectId)

GetListAsync(long)

public Task<RedbList?> GetListAsync(long listId)

GetListByNameAsync(string)

public Task<RedbList?> GetListByNameAsync(string name)

GetListByNameWithItemsAsync(string)

Get list by name with all its items loaded.

public Task<RedbList?> GetListByNameWithItemsAsync(string name)

GetListItemAsync(long)

public Task<RedbListItem?> GetListItemAsync(long itemId)

GetListItemByValueAsync(long, string)

public Task<RedbListItem?> GetListItemByValueAsync(long listId, string value)

GetListItemsAsync(long)

public Task<List<RedbListItem>> GetListItemsAsync(long listId)

GetListWithItemsAsync(long)

Get list with all its items loaded.

public Task<RedbList?> GetListWithItemsAsync(long listId)

IsListUsedInStructuresAsync(long)

public Task<bool> IsListUsedInStructuresAsync(long listId)

SaveListAsync(IRedbList)

public Task<RedbList> SaveListAsync(IRedbList list)

SaveListItemAsync(IRedbListItem)

public Task<RedbListItem> SaveListItemAsync(IRedbListItem item)

SaveListWithItemsAsync(IRedbList)

Save list with all its items (Aggregate Root).

public Task<RedbList> SaveListWithItemsAsync(IRedbList list)

SyncListFromEnumAsync<TEnum>(string?)

public Task<RedbList> SyncListFromEnumAsync<TEnum>(string? listName = null) where TEnum : struct, Enum

Constructors