Fauna v10 .NET/C# Driver 1.0.1
 
Loading...
Searching...
No Matches
Classes | Protected Member Functions | List of all members
Fauna.Linq.DataContext Class Referenceabstract

An abstract class representing a DataContext. This is a special type of Fauna client that can be used to execute LINQ-style queries. More...

Inheritance diagram for Fauna.Linq.DataContext:
Fauna.BaseClient Fauna.IClient

Classes

class  Collection
 An abstract collection. This should be implemented for each collection in the database. More...
 
class  FunctionCall
 A class representing a function call. More...
 
interface  ICollection
 An interface for a Fauna collection within a DataContext. More...
 
interface  IFunction
 An interface representing a function. More...
 
interface  IIndex
 An interface representing an index query source. More...
 
class  Index
 A class representing an index query source. More...
 
class  NameAttribute
 An attribute representing a collection name. More...
 

Protected Member Functions

FunctionCall< T > Fn< T > (string name="", [CallerMemberName] string callerName="")
 A helper method to declare new function calls.
 
Col GetCollection< Col > ()
 Gets a collection of type Col .
 

Additional Inherited Members

- Public Member Functions inherited from Fauna.BaseClient
Task< QuerySuccess< T > > QueryAsync< T > (Query query, QueryOptions? queryOptions=null, CancellationToken cancel=default)
 Asynchronously executes a specified FQL query against the Fauna database and returns the typed result.
Template Parameters
TThe type of the result expected from the query, corresponding to the structure of the FQL query's expected response.
Parameters
queryThe FQL query object representing the query to be executed against the Fauna database.
queryOptionsOptional parameters to customize the query execution, such as timeout settings and custom headers.
cancelA cancellation token to use
Returns
A Task representing the asynchronous operation, which upon completion contains the result of the query execution as QuerySuccess<T>.
Exceptions
AuthenticationExceptionThrown when authentication fails due to invalid credentials or other authentication issues.
AuthorizationExceptionThrown when the client lacks sufficient permissions to execute the query.
QueryCheckExceptionThrown when the query has syntax errors or is otherwise malformed.
QueryRuntimeExceptionThrown when runtime errors occur during query execution, such as invalid arguments or operational failures.
AbortExceptionThrown when the FQL abort function is called within the query, containing the data provided during the abort operation.
InvalidRequestExceptionThrown for improperly formatted requests or requests that Fauna cannot process.
ContendedTransactionExceptionThrown when a transaction is aborted due to concurrent modification or contention issues.
ThrottlingExceptionThrown when the query exceeds established rate limits for the Fauna service.
QueryTimeoutExceptionThrown when the query execution time exceeds the specified or default timeout period.
ServiceExceptionThrown in response to internal Fauna service errors, indicating issues on the server side.
FaunaExceptionThrown for unexpected or miscellaneous errors not covered by the other specific exception types.

 
Task< QuerySuccess< object?> > QueryAsync (Query query, QueryOptions? queryOptions=null, CancellationToken cancel=default)
 Asynchronously executes a specified FQL query against the Fauna database.
Parameters
queryThe FQL query object representing the query to be executed against the Fauna database.
queryOptionsOptional parameters to customize the query execution, such as timeout settings and custom headers.
cancelA cancellation token to use.
Returns
A Task representing the asynchronous operation, which upon completion contains the result of the query execution.
Exceptions
AuthenticationExceptionThrown when authentication fails due to invalid credentials or other authentication issues.
AuthorizationExceptionThrown when the client lacks sufficient permissions to execute the query.
QueryCheckExceptionThrown when the query has syntax errors or is otherwise malformed.
QueryRuntimeExceptionThrown when runtime errors occur during query execution, such as invalid arguments or operational failures.
AbortExceptionThrown when the FQL abort function is called within the query, containing the data provided during the abort operation.
InvalidRequestExceptionThrown for improperly formatted requests or requests that Fauna cannot process.
ContendedTransactionExceptionThrown when a transaction is aborted due to concurrent modification or contention issues.
ThrottlingExceptionThrown when the query exceeds established rate limits for the Fauna service.
QueryTimeoutExceptionThrown when the query execution time exceeds the specified or default timeout period.
ServiceExceptionThrown in response to internal Fauna service errors, indicating issues on the server side.
FaunaExceptionThrown for unexpected or miscellaneous errors not covered by the other specific exception types.

 
Task< QuerySuccess< T > > QueryAsync< T > (Query query, ISerializer< T > serializer, QueryOptions? queryOptions=null, CancellationToken cancel=default)
 Asynchronously executes a specified FQL query against the Fauna database and returns the typed result.
Template Parameters
TThe type of the result expected from the query, corresponding to the structure of the FQL query's expected response.
Parameters
queryThe FQL query object representing the query to be executed against the Fauna database.
serializerA serializer for the success data type.
queryOptionsOptional parameters to customize the query execution, such as timeout settings and custom headers.
cancelA cancellation token to use.
Returns
A Task representing the asynchronous operation, which upon completion contains the result of the query execution as QuerySuccess<T>.
Exceptions
AuthenticationExceptionThrown when authentication fails due to invalid credentials or other authentication issues.
AuthorizationExceptionThrown when the client lacks sufficient permissions to execute the query.
QueryCheckExceptionThrown when the query has syntax errors or is otherwise malformed.
QueryRuntimeExceptionThrown when runtime errors occur during query execution, such as invalid arguments or operational failures.
AbortExceptionThrown when the FQL abort function is called within the query, containing the data provided during the abort operation.
InvalidRequestExceptionThrown for improperly formatted requests or requests that Fauna cannot process.
ContendedTransactionExceptionThrown when a transaction is aborted due to concurrent modification or contention issues.
ThrottlingExceptionThrown when the query exceeds established rate limits for the Fauna service.
QueryTimeoutExceptionThrown when the query execution time exceeds the specified or default timeout period.
ServiceExceptionThrown in response to internal Fauna service errors, indicating issues on the server side.
FaunaExceptionThrown for unexpected or miscellaneous errors not covered by the other specific exception types.

 
Task< QuerySuccess< object?> > QueryAsync (Query query, ISerializer serializer, QueryOptions? queryOptions=null, CancellationToken cancel=default)
 Asynchronously executes a specified FQL query against the Fauna database and returns the typed result.
Parameters
queryThe FQL query object representing the query to be executed against the Fauna database.
serializerA serializer for the success data type.
queryOptionsOptional parameters to customize the query execution, such as timeout settings and custom headers.
cancelA cancellation toke to use.
Returns
A Task representing the asynchronous operation, which upon completion contains the result of the query execution.
Exceptions
AuthenticationExceptionThrown when authentication fails due to invalid credentials or other authentication issues.
AuthorizationExceptionThrown when the client lacks sufficient permissions to execute the query.
QueryCheckExceptionThrown when the query has syntax errors or is otherwise malformed.
QueryRuntimeExceptionThrown when runtime errors occur during query execution, such as invalid arguments or operational failures.
AbortExceptionThrown when the FQL abort function is called within the query, containing the data provided during the abort operation.
InvalidRequestExceptionThrown for improperly formatted requests or requests that Fauna cannot process.
ContendedTransactionExceptionThrown when a transaction is aborted due to concurrent modification or contention issues.
ThrottlingExceptionThrown when the query exceeds established rate limits for the Fauna service.
QueryTimeoutExceptionThrown when the query execution time exceeds the specified or default timeout period.
ServiceExceptionThrown in response to internal Fauna service errors, indicating issues on the server side.
FaunaExceptionThrown for unexpected or miscellaneous errors not covered by the other specific exception types.

 
IAsyncEnumerable< Page< T > > PaginateAsync< T > (Query query, QueryOptions? queryOptions=null, CancellationToken cancel=default)
 Asynchronously iterates over pages of a Fauna query result, automatically fetching subsequent pages using the 'after' cursor.
Template Parameters
TThe type of the data expected in each page.
Parameters
queryThe FQL query object representing the query to be executed against the Fauna database.
queryOptionsOptional parameters to customize the query execution, such as timeout settings and custom headers.
cancelA cancellation token to use.
Returns
An asynchronous enumerable of pages, each containing a list of items of type T .
This method handles pagination by sending multiple requests to Fauna as needed, based on the presence of an 'after' cursor in the query results.
 
IAsyncEnumerable< Page< T > > PaginateAsync< T > (Page< T > page, QueryOptions? queryOptions=null, CancellationToken cancel=default)
 Asynchronously iterates over pages of a Fauna query result, automatically fetching subsequent pages using the 'after' cursor. The provided page is the first page yielded.
Template Parameters
TThe type of the data expected in each page.
Parameters
pageThe initial page.
queryOptionsOptional parameters to customize the query execution, such as timeout settings and custom headers.
cancelA cancellation token to use.
Returns
An asynchronous enumerable of pages, each containing a list of items of type T .
This method handles pagination by sending multiple requests to Fauna as needed, based on the presence of an 'after' cursor in the query results.
 
IAsyncEnumerable< Page< object?> > PaginateAsync (Query query, QueryOptions? queryOptions=null, CancellationToken cancel=default)
 Asynchronously iterates over pages of a Fauna query result, automatically fetching subsequent pages using the 'after' cursor.
Parameters
queryThe FQL query object representing the query to be executed against the Fauna database.
queryOptionsOptional parameters to customize the query execution, such as timeout settings and custom headers.
cancelA cancellation token to use.
Returns
An asynchronous enumerable of pages, each containing a list of items.
This method handles pagination by sending multiple requests to Fauna as needed, based on the presence of an 'after' cursor in the query results.
 
IAsyncEnumerable< Page< object?> > PaginateAsync (Page< object?> page, QueryOptions? queryOptions=null, CancellationToken cancel=default)
 Asynchronously iterates over pages of a Fauna query result, automatically fetching subsequent pages using the 'after' cursor. The provided page is the first page yielded.
Parameters
pageThe initial page.
queryOptionsOptional parameters to customize the query execution, such as timeout settings and custom headers.
cancelA cancellation token to use.
Returns
An asynchronous enumerable of pages, each containing a list of items.
This method handles pagination by sending multiple requests to Fauna as needed, based on the presence of an 'after' cursor in the query results.
 
IAsyncEnumerable< Page< T > > PaginateAsync< T > (Query query, ISerializer< T > elemSerializer, QueryOptions? queryOptions=null, CancellationToken cancel=default)
 Asynchronously iterates over pages of a Fauna query result, automatically fetching subsequent pages using the 'after' cursor.
Template Parameters
TThe type of the data expected in each page.
Parameters
queryThe FQL query object representing the query to be executed against the Fauna database.
elemSerializerA data serializer for the page element type.
queryOptionsOptional parameters to customize the query execution, such as timeout settings and custom headers.
cancelA cancellation token to use.
Returns
An asynchronous enumerable of pages, each containing a list of items of type T .
This method handles pagination by sending multiple requests to Fauna as needed, based on the presence of an 'after' cursor in the query results.
 
IAsyncEnumerable< Page< T > > PaginateAsync< T > (Page< T > page, ISerializer< T > elemSerializer, QueryOptions? queryOptions=null, CancellationToken cancel=default)
 Asynchronously iterates over pages of a Fauna query result, automatically fetching subsequent pages using the 'after' cursor. The provided page is the first page yielded.
Template Parameters
TThe type of the data expected in each page.
Parameters
pageThe initial page.
elemSerializerA data serializer for the page element type.
queryOptionsOptional parameters to customize the query execution, such as timeout settings and custom headers.
cancelA cancellation token to use.
Returns
An asynchronous enumerable of pages, each containing a list of items of type T .
This method handles pagination by sending multiple requests to Fauna as needed, based on the presence of an 'after' cursor in the query results.
 
IAsyncEnumerable< Page< object?> > PaginateAsync (Query query, ISerializer elemSerializer, QueryOptions? queryOptions=null, CancellationToken cancel=default)
 Asynchronously iterates over pages of a Fauna query result, automatically fetching subsequent pages using the 'after' cursor.
Parameters
queryThe FQL query object representing the query to be executed against the Fauna database.
elemSerializerA data serializer for the page element type.
queryOptionsOptional parameters to customize the query execution, such as timeout settings and custom headers.
cancelA cancellation token to use.
Returns
A Task representing the asynchronous operation, which upon completion contains the result of the query execution.
This method handles pagination by sending multiple requests to Fauna as needed, based on the presence of an 'after' cursor in the query results.
 
IAsyncEnumerable< Page< object?> > PaginateAsync (Page< object?> page, ISerializer elemSerializer, QueryOptions? queryOptions=null, CancellationToken cancel=default)
 Asynchronously iterates over pages of a Fauna query result, automatically fetching subsequent pages using the 'after' cursor. The provided page is the first page yielded.
Parameters
pageThe FQL query object representing the query to be executed against the Fauna database.
elemSerializerA data serializer for the page element type.
queryOptionsOptional parameters to customize the query execution, such as timeout settings and custom headers.
cancelA cancellation token to use.
Returns
A Task representing the asynchronous operation, which upon completion contains the result of the query execution.
This method handles pagination by sending multiple requests to Fauna as needed, based on the presence of an 'after' cursor in the query results.
 
async Task< T > LoadRefAsync< T > (BaseRef< T > reference, CancellationToken cancel=default)
 Asynchronously executes a specified FQL query against the Fauna database and returns the typed result.
Template Parameters
TThe type of the result expected from the query, corresponding to the structure of the FQL query's expected response.
Parameters
referenceThe reference to load.
cancelA cancellation token to use
Returns
A Task representing the asynchronous operation, which upon completion contains the result of the query execution as QuerySuccess<T>.
Exceptions
AuthenticationExceptionThrown when authentication fails due to invalid credentials or other authentication issues.
AuthorizationExceptionThrown when the client lacks sufficient permissions to execute the query.
QueryCheckExceptionThrown when the query has syntax errors or is otherwise malformed.
QueryRuntimeExceptionThrown when runtime errors occur during query execution, such as invalid arguments or operational failures.
AbortExceptionThrown when the FQL abort function is called within the query, containing the data provided during the abort operation.
InvalidRequestExceptionThrown for improperly formatted requests or requests that Fauna cannot process.
ContendedTransactionExceptionThrown when a transaction is aborted due to concurrent modification or contention issues.
ThrottlingExceptionThrown when the query exceeds established rate limits for the Fauna service.
QueryTimeoutExceptionThrown when the query execution time exceeds the specified or default timeout period.
ServiceExceptionThrown in response to internal Fauna service errors, indicating issues on the server side.
FaunaExceptionThrown for unexpected or miscellaneous errors not covered by the other specific exception types.
NullDocumentExceptionThrown when the provided reference does not exist.

 
async Task< StreamEnumerable< T > > EventStreamAsync< T > (Query query, QueryOptions? queryOptions=null, StreamOptions? streamOptions=null, CancellationToken cancellationToken=default)
 Retrieves a Stream token from Fauna and returns a StreamEnumerable for the stream events.
 
async Task< StreamEnumerable< T > > EventStreamAsync< T > (EventSource eventSource, CancellationToken cancellationToken=default)
 Returns a StreamEnumerable for the stream events.
 
async Task< FeedEnumerable< T > > EventFeedAsync< T > (EventSource eventSource, FeedOptions? feedOptions=null, CancellationToken cancellationToken=default)
 Opens the event feed with Fauna and returns an enumerator for the events.
 
async Task< FeedEnumerable< T > > EventFeedAsync< T > (Query query, FeedOptions? feedOptions=null, CancellationToken cancellationToken=default)
 Opens the event feed with Fauna and returns an enumerator for the events.
 
IAsyncEnumerator< Event< T > > SubscribeStream< T > (EventSource eventSource, MappingContext ctx, CancellationToken cancel=default)
 Opens the stream with Fauna and returns an enumerator for the stream events.
 
IAsyncEnumerator< FeedPage< T > > SubscribeFeed< T > (EventSource eventSource, MappingContext ctx, CancellationToken cancel=default)
 Opens an event feed with Fauna and returns an enumerator for the events.
 

Detailed Description

An abstract class representing a DataContext. This is a special type of Fauna client that can be used to execute LINQ-style queries.

Users should implement this for each database they'd like to query with LINQ.

Definition at line 16 of file DataContext.cs.

Member Function Documentation

◆ Fn< T >()

FunctionCall< T > Fauna.Linq.DataContext.Fn< T > ( string  name = "",
[CallerMemberName] string  callerName = "" 
)
protected

A helper method to declare new function calls.

Parameters
nameThe name of the function. If null, the caller name is used.
callerNameThe caller name.
Template Parameters
T
Returns
Type Constraints
T :notnull 

Definition at line 398 of file DataContext.cs.

◆ GetCollection< Col >()

Col Fauna.Linq.DataContext.GetCollection< Col > ( )
protected

Gets a collection of type Col .

Template Parameters
ColThe type of the collection.
Returns
The collection
Type Constraints
Col :ICollection 

Definition at line 409 of file DataContext.cs.


The documentation for this class was generated from the following file: