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.