Table of Contents

Class ReportRunner

Namespace
ReportWright.AspNetCore
Assembly
ReportWright.AspNetCore.dll

Runs reports for the endpoints and for a Blazor Server host: the store, the router, the fonts, the sessions and the exports in one place.

public sealed class ReportRunner
Inheritance
ReportRunner
Inherited Members

Constructors

ReportRunner(ReportWrightOptions, ReportStore, DataSourceResolver, ReportPermissions, ReportSessionCache)

Initializes the runner from the host's registrations.

Properties

FontCatalog

Gets the font catalogue the browser is served from.

Fonts

Gets the font engine every run measures with.

Metadata

Gets the design-time data service.

Options

Gets the options.

Permissions

Gets the permissions.

Resolver

Gets the host's data source resolver.

Router

Gets the data provider every run reads through.

Sessions

Gets the sessions.

Store

Gets the store.

Methods

CanonicalPath(string)

The one spelling of a report path that permissions are asked about: forward slashes, no empty or "." segments. The store accepts the other spellings of the same file, so a rule written against the canonical path must see it.

CreateRunOptions(string, RunRequest, ClaimsPrincipal?)

Builds the run options for a request: the clock, the culture, the user, the parameters, and subreports from the store.

CreateSubreportResolver(string)

Creates the resolver that finds a report's subreports in the store, beside the report or by a path from the store's root.

CreateSubreportResolver(string, ClaimsPrincipal?)

Creates the subreport resolver for one caller: a subreport the caller may not view resolves to null, as one the store lacks does.

DataFor(ReportDefinition)

The data a run of a report reads: the router, with each text column typed by the field the report declares (DeclaredTypesDataProvider).

Export(ReportPageModel, string, int?, CancellationToken, out ExportFormat)

Exports pages in a registered format.

GetParametersAsync(string, RunRequest, ClaimsPrincipal?, CancellationToken)

Resolves a report's parameters without running it.

LoadAsync(string, CancellationToken)

Loads a report from the store.

ParametersFrom(Dictionary<string, JsonElement>?)

Turns the wire form of parameter values into the engine's: a string, an array of strings, or null.

ReadDataSet(ReportDefinition, string, ReportRunOptions, CancellationToken)

Reads one dataset's rows for a client that runs the engine itself, evaluating the query from the stored definition — never from text the client sent.

RunAsync(string, RunRequest, ClaimsPrincipal?, CancellationToken)

Runs a report into a cached session.

Sort(ReportSession, string, ReportSortDirection, CancellationToken)

Applies an interactive sort by re-running the session's report.