Route to first parent page

This commit is contained in:
Pat Hartl 2024-08-28 00:24:26 -05:00
parent df7d3250f7
commit 8896501a07

View file

@ -5,6 +5,7 @@
@using ZiggyCreatures.Caching.Fusion
@inject PageService PageService
@inject IFusionCache Cache
@inject NavigationManager NavigationManager
@if (Page != null)
{
@ -34,11 +35,22 @@
protected override async Task OnParametersSetAsync()
{
var route = Route.TrimEnd('/').ToLower();
if (Route == null) {
var firstParent = await PageService.Get(p => p.Parent == null).OrderBy(p => p.SortOrder).FirstOrDefaultAsync();
Page = await Cache.GetOrSetAsync<Page>($"Page|{route}", async _ =>
if (firstParent == null)
NavigationManager.NavigateTo("/");
else
NavigationManager.NavigateTo($"/{firstParent.Route}");
}
else
{
return await PageService.Get(p => p.Route == $"Pages/{route}").FirstOrDefaultAsync();
});
var route = Route.TrimEnd('/').ToLower();
Page = await Cache.GetOrSetAsync<Page>($"Page|{route}", async _ =>
{
return await PageService.Get(p => p.Route == $"Pages/{route}").FirstOrDefaultAsync();
});
}
}
}