Interface ICosmosHelper
Cosmos DB data access helper for query execution, result mapping, and document mutations via SQL API.
Assembly: DataWeb.Data.AzureCosmosDB.dll
Syntax
public interface ICosmosHelper
Methods
AddArrayValueAsync(string, string, object, string, string, string, CosmosClient, CancellationToken)
Appends an element to an array field in a document using the Cosmos DB patch API.
Declaration
Task AddArrayValueAsync(string id, string arrayFieldPath, object value, string storageDatabase, string storageContainer, string partitionKey, CosmosClient client = null, CancellationToken cancellationToken = default)
Parameters
Returns
DeleteItemAsync<T>(string, string, string, string, CosmosClient, CancellationToken)
Deletes a document from Cosmos DB by ID and partition key.
Declaration
Task DeleteItemAsync<T>(string id, string storageDatabase, string storageContainer, string partitionKey, CosmosClient client = null, CancellationToken cancellationToken = default)
Parameters
Returns
Type Parameters
DeleteItemsAsync<T>(IEnumerable<(string id, string partitionKey)>, string, string, CosmosClient, CancellationToken)
Deletes multiple documents from Cosmos DB in parallel.
Declaration
Task DeleteItemsAsync<T>(IEnumerable<(string id, string partitionKey)> items, string storageDatabase, string storageContainer, CosmosClient client = null, CancellationToken cancellationToken = default)
Parameters
Returns
Type Parameters
GetListAsync<T>(Query, string, string, CosmosClient, CancellationToken)
Executes a query and returns a collection of mapped results. Overload accepting a pre-compiled Query object.
Declaration
Task<IReadOnlyList<T>> GetListAsync<T>(Query query, string storageDatabase, string storageContainer, CosmosClient client = null, CancellationToken cancellationToken = default)
Parameters
Returns
Type Parameters
GetListAsync<T>(string, string, string, Dictionary<string, object>, int, long?, CosmosClient, CancellationToken)
Executes a query and returns a collection of mapped results with optional pagination.
Declaration
Task<IReadOnlyList<T>> GetListAsync<T>(string query, string storageDatabase, string storageContainer, Dictionary<string, object> parameters = null, int count = 0, long? pageIndex = null, CosmosClient client = null, CancellationToken cancellationToken = default)
Parameters
Returns
Type Parameters
GetValueAsync<T>(Query, string, string, CosmosClient, CancellationToken)
Executes a scalar query and returns a single mapped value. Overload accepting a pre-compiled Query object.
Declaration
Task<T> GetValueAsync<T>(Query query, string storageDatabase, string storageContainer, CosmosClient client = null, CancellationToken cancellationToken = default)
Parameters
Returns
Type Parameters
GetValueAsync<T>(string, string, string, Dictionary<string, object>, CosmosClient, CancellationToken)
Executes a scalar query and returns a single mapped value. Uses MaxItemCount=1 for efficiency.
Declaration
Task<T> GetValueAsync<T>(string query, string storageDatabase, string storageContainer, Dictionary<string, object> parameters = null, CosmosClient client = null, CancellationToken cancellationToken = default)
Parameters
Returns
| Type |
Description |
| Task<T> |
First result, or default(T) if empty.
|
Type Parameters
IncrementValueAsync(string, string, long, string, string, string, CosmosClient, CancellationToken)
Atomically increments a numeric field in a document using the Cosmos DB patch API.
Declaration
Task<long> IncrementValueAsync(string id, string fieldPath, long incrementValue, string storageDatabase, string storageContainer, string partitionKey, CosmosClient client = null, CancellationToken cancellationToken = default)
Parameters
Returns
| Type |
Description |
| Task<long> |
The new value after the increment.
|
SetValueAsync(string, string, object, string, string, string, CosmosClient, CancellationToken)
Patches a single property of an existing document using the Cosmos DB patch API.
Declaration
Task SetValueAsync(string id, string fieldPath, object value, string storageDatabase, string storageContainer, string partitionKey, CosmosClient client = null, CancellationToken cancellationToken = default)
Parameters
Returns
UpsertDictionaryAsync(Dictionary<string, object>, string, string, string, CosmosClient, CancellationToken)
Inserts or updates a dictionary-based document in Cosmos DB. Data must contain an 'Id' or 'id' key.
Declaration
Task UpsertDictionaryAsync(Dictionary<string, object> data, string storageDatabase, string storageContainer, string partitionKey, CosmosClient client = null, CancellationToken cancellationToken = default)
Parameters
Returns
UpsertItemAsync<T>(T, string, string, string, CosmosClient, CancellationToken)
Inserts or updates a strongly-typed item in Cosmos DB.
Declaration
Task UpsertItemAsync<T>(T item, string storageDatabase, string storageContainer, string partitionKey, CosmosClient client = null, CancellationToken cancellationToken = default)
Parameters
Returns
Type Parameters