Route to first parent page
This commit is contained in:
parent
df7d3250f7
commit
8896501a07
1 changed files with 16 additions and 4 deletions
|
|
@ -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();
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue