@layout PageLayout @inject IDocumentationService documentationService @implements IDisposable @page "/docs/{href1}/{href2?}/{href3?}/{href4?}/{href5?}" @if (!documentationService.IsLoaded()) { } else { @foreach (var doc in documentationService.DocContentModels) { if (!doc.Href.Equals(Href)) { continue; } } } @code { [Parameter] public string? Href1 { get; set; } [Parameter] public string? Href2 { get; set; } [Parameter] public string? Href3 { get; set; } [Parameter] public string? Href4 { get; set; } [Parameter] public string? Href5 { get; set; } private string Href => Href5 ?? Href4 ?? Href3 ?? Href2 ?? Href1 ?? ""; protected override void OnInitialized() { documentationService.Subscribe(StateHasChanged); documentationService.Load(); } void IDisposable.Dispose() { documentationService.Unsubscribe(StateHasChanged); } }