Skip to main content

RemoteScanNode

  • Namespace: PPDS.Dataverse.Query.Planning.Nodes
  • Assembly: PPDS.Dataverse
  • Kind: Class
  • Implements: IQueryPlanNode

Summary

Executes a FetchXML query against a remote environment's connection pool. Used for cross-environment queries where bracket syntax ([LABEL].entity) references a different Dataverse environment.

Members

Constructors

RemoteScanNode(string fetchXml, string entityLogicalName, string remoteLabel, IQueryExecutor remoteExecutor, int maxPages)

RemoteScanNode(string fetchXml, string entityLogicalName, string remoteLabel, IQueryExecutor remoteExecutor, int maxPages)

Initializes a new instance of the PPDS.Dataverse.Query.Planning.Nodes.RemoteScanNode class.

  • Param fetchXml: The FetchXML query to execute.

  • Param entityLogicalName: The entity being queried.

  • Param remoteLabel: The label of the remote environment.

  • Param remoteExecutor: The query executor for the remote environment.

  • Param maxPages: Maximum number of pages to fetch before throwing (default 200).

Methods

ExecuteAsync

IAsyncEnumerable<QueryRow> ExecuteAsync(QueryPlanContext context, CancellationToken cancellationToken)

Execute this node, producing rows.

Properties

Children

IReadOnlyList<IQueryPlanNode> Children { get; }

Child nodes (inputs to this operator).

Description

string Description { get; }

Human-readable description for EXPLAIN output.

EntityLogicalName

string EntityLogicalName { get; }

The entity being queried on the remote environment.

EstimatedRows

long EstimatedRows { get; }

Estimated row count (for cost-based decisions). -1 if unknown.

RemoteLabel

string RemoteLabel { get; }

The label of the remote environment (e.g., "UAT", "PROD").