Class CosmosLinqExtensions
This class provides extension methods for cosmos LINQ code.
public static class CosmosLinqExtensions
- Inheritance
-
CosmosLinqExtensions
- Inherited Members
Methods
AverageAsync(IQueryable<decimal>, CancellationToken)
Computes the average of a sequence of decimal values.
public static Task<Response<decimal>> AverageAsync(this IQueryable<decimal> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<decimal>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
AverageAsync(IQueryable<double>, CancellationToken)
Computes the average of a sequence of double values.
public static Task<Response<double>> AverageAsync(this IQueryable<double> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<double>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
AverageAsync(IQueryable<int>, CancellationToken)
Computes the average of a sequence of int values.
public static Task<Response<double>> AverageAsync(this IQueryable<int> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<int>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
AverageAsync(IQueryable<long>, CancellationToken)
Computes the average of a sequence of long values.
public static Task<Response<double>> AverageAsync(this IQueryable<long> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<long>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
AverageAsync(IQueryable<decimal?>, CancellationToken)
Computes the average of a sequence of Nullable<T> values.
public static Task<Response<decimal?>> AverageAsync(this IQueryable<decimal?> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<decimal?>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
AverageAsync(IQueryable<double?>, CancellationToken)
Computes the average of a sequence of Nullable<T> values.
public static Task<Response<double?>> AverageAsync(this IQueryable<double?> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<double?>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
AverageAsync(IQueryable<int?>, CancellationToken)
Computes the average of a sequence of Nullable<T> values.
public static Task<Response<double?>> AverageAsync(this IQueryable<int?> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<int?>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
AverageAsync(IQueryable<long?>, CancellationToken)
Computes the average of a sequence of Nullable<T> values.
public static Task<Response<double?>> AverageAsync(this IQueryable<long?> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<long?>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
AverageAsync(IQueryable<float?>, CancellationToken)
Computes the average of a sequence of Nullable<T> values.
public static Task<Response<float?>> AverageAsync(this IQueryable<float?> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<float?>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
AverageAsync(IQueryable<float>, CancellationToken)
Computes the average of a sequence of float values.
public static Task<Response<float>> AverageAsync(this IQueryable<float> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<float>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
CountAsync<TSource>(IQueryable<TSource>, CancellationToken)
Returns the number of elements in a sequence.
public static Task<Response<int>> CountAsync<TSource>(this IQueryable<TSource> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<TSource>The sequence that contains the elements to be counted.
cancellationToken
CancellationTokenThe cancellation token.
Returns
Type Parameters
TSource
The type of the elements of source.
IsArray(object)
Returns a Boolean value indicating if the type of the specified expression is an array. This method is to be used in LINQ expressions only and will be evaluated on server. There's no implementation provided in the client library.
public static bool IsArray(this object obj)
Parameters
obj
object
Returns
- bool
Returns true if the type of the specified expression is an array; otherwise, false.
Examples
var isArrayQuery = documents.Where(document => document.Names.IsArray());
IsBool(object)
Returns a Boolean value indicating if the type of the specified expression is a boolean. This method is to be used in LINQ expressions only and will be evaluated on server. There's no implementation provided in the client library.
public static bool IsBool(this object obj)
Parameters
obj
object
Returns
- bool
Returns true if the type of the specified expression is a boolean; otherwise, false.
Examples
var isBoolQuery = documents.Where(document => document.IsRegistered.IsBool());
IsDefined(object)
Determines if a certain property is defined or not. This method is to be used in LINQ expressions only and will be evaluated on server. There's no implementation provided in the client library.
public static bool IsDefined(this object obj)
Parameters
obj
object
Returns
- bool
Returns true if this property is defined otherwise returns false.
Examples
var isDefinedQuery = documents.Where(document => document.Name.IsDefined());
IsNull(object)
Determines if a certain property is null or not. This method is to be used in LINQ expressions only and will be evaluated on server. There's no implementation provided in the client library.
public static bool IsNull(this object obj)
Parameters
obj
object
Returns
- bool
Returns true if this property is null otherwise returns false.
Examples
var isNullQuery = documents.Where(document => document.Name.IsNull());
IsNumber(object)
Returns a Boolean value indicating if the type of the specified expression is a number. This method is to be used in LINQ expressions only and will be evaluated on server. There's no implementation provided in the client library.
public static bool IsNumber(this object obj)
Parameters
obj
object
Returns
- bool
Returns true if the type of the specified expression is a number; otherwise, false.
Examples
var isNumberQuery = documents.Where(document => document.Age.IsNumber());
IsObject(object)
Returns a Boolean value indicating if the type of the specified expression is an object. This method is to be used in LINQ expressions only and will be evaluated on server. There's no implementation provided in the client library.
public static bool IsObject(this object obj)
Parameters
obj
object
Returns
- bool
Returns true if the type of the specified expression is an object; otherwise, false.
Examples
var isObjectQuery = documents.Where(document => document.Address.IsObject());
IsPrimitive(object)
Determines if a certain property is of primitive JSON type. This method is to be used in LINQ expressions only and will be evaluated on server. There's no implementation provided in the client library.
public static bool IsPrimitive(this object obj)
Parameters
obj
object
Returns
- bool
Returns true if this property is null otherwise returns false.
Examples
var isPrimitiveQuery = documents.Where(document => document.Name.IsPrimitive());
Remarks
Primitive JSON types (Double, String, Boolean and Null)
IsString(object)
Returns a Boolean value indicating if the type of the specified expression is a string. This method is to be used in LINQ expressions only and will be evaluated on server. There's no implementation provided in the client library.
public static bool IsString(this object obj)
Parameters
obj
object
Returns
- bool
Returns true if the type of the specified expression is a string; otherwise, false.
Examples
var isStringQuery = documents.Where(document => document.Name.IsString());
MaxAsync<TSource>(IQueryable<TSource>, CancellationToken)
Returns the maximum value in a generic IQueryable<T>.
public static Task<Response<TSource>> MaxAsync<TSource>(this IQueryable<TSource> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<TSource>A sequence of values to determine the maximum of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
Type Parameters
TSource
The type of the elements of source.
MinAsync<TSource>(IQueryable<TSource>, CancellationToken)
Returns the minimum value in a generic IQueryable<T>.
public static Task<Response<TSource>> MinAsync<TSource>(this IQueryable<TSource> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<TSource>A sequence of values to determine the minimum of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
Type Parameters
TSource
The type of the elements of source.
SumAsync(IQueryable<decimal>, CancellationToken)
Computes the sum of a sequence of decimal values.
public static Task<Response<decimal>> SumAsync(this IQueryable<decimal> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<decimal>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
SumAsync(IQueryable<double>, CancellationToken)
Computes the sum of a sequence of double values.
public static Task<Response<double>> SumAsync(this IQueryable<double> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<double>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
SumAsync(IQueryable<int>, CancellationToken)
Computes the sum of a sequence of int values.
public static Task<Response<int>> SumAsync(this IQueryable<int> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<int>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
SumAsync(IQueryable<long>, CancellationToken)
Computes the sum of a sequence of long values.
public static Task<Response<long>> SumAsync(this IQueryable<long> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<long>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
SumAsync(IQueryable<decimal?>, CancellationToken)
Computes the sum of a sequence of Nullable<T> values.
public static Task<Response<decimal?>> SumAsync(this IQueryable<decimal?> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<decimal?>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
SumAsync(IQueryable<double?>, CancellationToken)
Computes the sum of a sequence of Nullable<T> values.
public static Task<Response<double?>> SumAsync(this IQueryable<double?> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<double?>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
SumAsync(IQueryable<int?>, CancellationToken)
Computes the sum of a sequence of Nullable<T> values.
public static Task<Response<int?>> SumAsync(this IQueryable<int?> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<int?>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
SumAsync(IQueryable<long?>, CancellationToken)
Computes the sum of a sequence of Nullable<T> values.
public static Task<Response<long?>> SumAsync(this IQueryable<long?> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<long?>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
SumAsync(IQueryable<float?>, CancellationToken)
Computes the sum of a sequence of Nullable<T> values.
public static Task<Response<float?>> SumAsync(this IQueryable<float?> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<float?>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
SumAsync(IQueryable<float>, CancellationToken)
Computes the sum of a sequence of float values.
public static Task<Response<float>> SumAsync(this IQueryable<float> source, CancellationToken cancellationToken = default)
Parameters
source
IQueryable<float>A sequence of values to calculate the average of.
cancellationToken
CancellationTokenThe cancellation token.
Returns
ToFeedIterator<T>(IQueryable<T>)
This extension method gets the FeedIterator from LINQ IQueryable to execute query asynchronously. This will create the fresh new FeedIterator when called.
public static FeedIterator<T> ToFeedIterator<T>(this IQueryable<T> query)
Parameters
query
IQueryable<T>the IQueryable{T} to be converted.
Returns
- FeedIterator<T>
An iterator to go through the items.
Type Parameters
T
the type of object to query.
Examples
This example shows how to get FeedIterator from LINQ.
IOrderedQueryable<ToDoActivity> linqQueryable = this.Container.GetItemLinqQueryable<ToDoActivity>();
using (FeedIterator<ToDoActivity> setIterator = linqQueryable.Where(item => (item.taskNum < 100)).ToFeedIterator()
ToQueryDefinition<T>(IQueryable<T>)
This method generate query definition from LINQ query.
public static QueryDefinition ToQueryDefinition<T>(this IQueryable<T> query)
Parameters
query
IQueryable<T>the IQueryable{T} to be converted.
Returns
- QueryDefinition
The queryDefinition which can be used in query execution.
Type Parameters
T
the type of object to query.
Examples
This example shows how to generate query definition from LINQ.
IQueryable<T> queryable = container.GetItemsQueryIterator<T>(allowSynchronousQueryExecution = true)
.Where(t => b.id.contains("test"));
QueryDefinition queryDefinition = queryable.ToQueryDefinition();
ToQueryDefinition<T>(IQueryable<T>, IDictionary<object, string>)
This method generate query definition from LINQ query.
public static QueryDefinition ToQueryDefinition<T>(this IQueryable<T> query, IDictionary<object, string> namedParameters)
Parameters
query
IQueryable<T>the IQueryable{T} to be converted.
namedParameters
IDictionary<object, string>Dictionary containing parameter value and name for parameterized query
Returns
- QueryDefinition
The queryDefinition which can be used in query execution.
Type Parameters
T
the type of object to query.
Examples
This example shows how to generate query definition from LINQ.
IQueryable<T> queryable = container.GetItemsQueryIterator<T>(allowSynchronousQueryExecution = true)
.Where(t => b.id.contains("test"));
QueryDefinition queryDefinition = queryable.ToQueryDefinition();
ToStreamIterator<T>(IQueryable<T>)
This extension method gets the FeedIterator from LINQ IQueryable to execute query asynchronously. This will create the fresh new FeedIterator when called.
public static FeedIterator ToStreamIterator<T>(this IQueryable<T> query)
Parameters
query
IQueryable<T>the IQueryable{T} to be converted.
Returns
- FeedIterator
An iterator to go through the items.
Type Parameters
T
the type of object to query.
Examples
This example shows how to get FeedIterator from LINQ.
IOrderedQueryable<ToDoActivity> linqQueryable = this.Container.GetItemLinqQueryable<ToDoActivity>();
using (FeedIterator setIterator = linqQueryable.Where(item => (item.taskNum < 100)).ToStreamIterator())