Class ListProviderBase
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
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