IFulltextSessionQueryAsyncTDocument, TResult(IPreparedQueryTDocument, TResult, CancellationToken) Method

Asynchronously executes the given prepared query and returns the list of results

Definition

Namespace: SphinxConnector.FluentApi
Assembly: SphinxConnector (in SphinxConnector.dll) Version: 6.1.0
C#
Task<IList<TResult>> QueryAsync<TDocument, TResult>(
	IPreparedQuery<TDocument, TResult> preparedQuery,
	CancellationToken cancellationToken
)

Parameters

preparedQuery  IPreparedQueryTDocument, TResult
The query to execute.
cancellationToken  CancellationToken
The token to monitor for cancellation requests.

Type Parameters

TDocument
The type of document to execute a prepared query for.
TResult
The type of the result to return.

Return Value

TaskIListTResult
The results of the query.

Example

Suppose you have the following prepared query:
C#

    public class GetMatchingProductsQuery : IPreparedQuery<Product>
    {
        public string MatchClause { get; set; }

        public int Skip { get; set; } = 0;

        public int Take { get; set; } = 15;

        public Expression<Func<IFulltextQuery<Product>, IFulltextQuery<Product>>> Query() => q => q.Match(MatchClause).Limit(Skip, Take);
    }
    

C#
using (IFulltextSession fulltextSession = fulltextStore.StartSession())
{
    var cts = new CancellationTokenSource()
    var preparedQuery = new GetMatchingProductsQuery { MatchClause = "my query", Skip = 14, Take = 14 };
    var results = await fulltextSession.QueryAsync(preparedQuery, cts.Token).
}

Exceptions

ArgumentNullExceptionOccurs when preparedQuery is null.
ObjectDisposedExceptionOccurs when the session has already been disposed.
FulltextExceptionOccurs when there is an error during the execution of the query.
OperationCanceledExceptionOccurs when cancellation has been requested.

See Also