Class CRUDQueryHandler
  
  Represents an entity that can execute a query. The implementation may be called by multiple threads and must be safe
 
  
  
    Inheritance
    System.Object
    CRUDQueryHandler
      
   
  
  
    Inherited Members
    
      System.Object.Equals(System.Object)
    
    
      System.Object.Equals(System.Object, System.Object)
    
    
      System.Object.GetHashCode()
    
    
      System.Object.GetType()
    
    
      System.Object.MemberwiseClone()
    
    
      System.Object.ReferenceEquals(System.Object, System.Object)
    
    
      System.Object.ToString()
    
   
  
  Assembly: NFX.dll
  Syntax
  
    public abstract class CRUDQueryHandler : INamed
   
  Constructors
  
  
  
  
  CRUDQueryHandler(ICRUDDataStore, QuerySource)
  
  
  Declaration
  
    protected CRUDQueryHandler(ICRUDDataStore store, QuerySource source)
   
  Parameters
  
  
  
  
  CRUDQueryHandler(ICRUDDataStore, String)
  
  
  Declaration
  
    protected CRUDQueryHandler(ICRUDDataStore store, string name)
   
  Parameters
  
  Fields
  
  
  
  Source
  
  
  Declaration
  
    protected readonly QuerySource Source
   
  Field Value
  
  Properties
  
  
  
  
  Name
  Returns query name that this handler handles
 
  
  Declaration
  
    public string Name { get; }
   
  Property Value
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.String | 
         | 
      
    
  
  
  
  
  Store
  Store instance that handler is under
 
  
  Declaration
  
    public ICRUDDataStore Store { get; }
   
  Property Value
  
  Methods
  
  
  
  
  Execute(ICRUDQueryExecutionContext, Query, Boolean)
  Executes query. The implementation may be called by multiple threads and must be safe
 
  
  Declaration
  
    public abstract RowsetBase Execute(ICRUDQueryExecutionContext context, Query query, bool oneRow = false)
   
  Parameters
  
  Returns
  
  
  
  
  ExecuteAsync(ICRUDQueryExecutionContext, Query, Boolean)
  Executes query. The implementation may be called by multiple threads and must be safe
 
  
  Declaration
  
    public abstract Task<RowsetBase> ExecuteAsync(ICRUDQueryExecutionContext context, Query query, bool oneRow = false)
   
  Parameters
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Threading.Tasks.Task<RowsetBase> | 
         | 
      
    
  
  
  
  
  ExecuteWithoutFetch(ICRUDQueryExecutionContext, Query)
  Executes query that dows not return results. The implementation may be called by multiple threads and must be safe.
Returns rows affected
 
  
  Declaration
  
    public abstract int ExecuteWithoutFetch(ICRUDQueryExecutionContext context, Query query)
   
  Parameters
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Int32 | 
         | 
      
    
  
  
  
  
  ExecuteWithoutFetchAsync(ICRUDQueryExecutionContext, Query)
  Executes query that dows not return results. The implementation may be called by multiple threads and must be safe.
Returns rows affected
 
  
  Declaration
  
    public abstract Task<int> ExecuteWithoutFetchAsync(ICRUDQueryExecutionContext context, Query query)
   
  Parameters
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Threading.Tasks.Task<System.Int32> | 
         | 
      
    
  
  
  
  
  GetSchema(ICRUDQueryExecutionContext, Query)
  Executes query without fetching any data but schema. The implementation may be called by multiple threads and must be safe
 
  
  Declaration
  
    public abstract Schema GetSchema(ICRUDQueryExecutionContext context, Query query)
   
  Parameters
  
  Returns
  
  
  
  
  GetSchemaAsync(ICRUDQueryExecutionContext, Query)
  Executes query without fetching any data but schema. The implementation may be called by multiple threads and must be safe
 
  
  Declaration
  
    public abstract Task<Schema> GetSchemaAsync(ICRUDQueryExecutionContext context, Query query)
   
  Parameters
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Threading.Tasks.Task<Schema> | 
         | 
      
    
  
  
  
  
  OpenCursor(ICRUDQueryExecutionContext, Query)
  Executes query into Cursor. The implementation may be called by multiple threads and must be safe
 
  
  Declaration
  
    public abstract Cursor OpenCursor(ICRUDQueryExecutionContext context, Query query)
   
  Parameters
  
  Returns
  
  
  
  
  OpenCursorAsync(ICRUDQueryExecutionContext, Query)
  Executes query into Cursor. The implementation may be called by multiple threads and must be safe
 
  
  Declaration
  
    public abstract Task<Cursor> OpenCursorAsync(ICRUDQueryExecutionContext context, Query query)
   
  Parameters
  
  Returns
  
    
      
        | Type | 
        Description | 
      
    
    
      
        | System.Threading.Tasks.Task<Cursor> | 
         | 
      
    
  
  Implements
  
  Extension Methods