Skip to main content

MetadataQueryExecutor

  • Namespace: PPDS.Dataverse.Metadata
  • Assembly: PPDS.Dataverse
  • Kind: Class
  • Implements: IMetadataQueryExecutor

Summary​

Queries Dataverse metadata via PPDS.Dataverse.Metadata.IMetadataQueryService and returns results as virtual table rows (dictionaries of PPDS.Dataverse.Query.QueryValue). Bridges the rich DTO-based metadata API to the flat row format used by the query engine.

Members​

Constructors​

MetadataQueryExecutor(IMetadataQueryService metadataService)​

MetadataQueryExecutor(IMetadataQueryService metadataService)

Creates executor with an optional metadata service. When null, all queries return empty results (useful for offline/testing scenarios).

Methods​

GetAvailableColumns​

IReadOnlyList<string> GetAvailableColumns(string tableName)

Gets the available columns for a metadata virtual table.

IsMetadataTable​

bool IsMetadataTable(string schemaQualifiedName)

Returns true if the table name is a known metadata virtual table.

QueryMetadataAsync​

Task<IReadOnlyList<IReadOnlyDictionary<string, QueryValue>>> QueryMetadataAsync(string tableName, IReadOnlyList<string> requestedColumns, CancellationToken cancellationToken)

Queries metadata for a virtual table.

  • Param tableName: The metadata table name (entity, attribute, relationship_1_n, etc.).

  • Param requestedColumns: Columns to return (null = all).

  • Param cancellationToken: Cancellation token.

  • Returns: The metadata rows.