gpt4 book ai didi

c# - 如何在 Razor Page OnInitialized 事件中使用 404 路由

转载 作者:行者123 更新时间:2023-12-03 19:20:25 26 4
gpt4 key购买 nike

在服务器端 Blazor 应用程序(Core 3.1)中有一个 Razor,它接受 @page 属性中的标识符。如果 URL 中提供的标识符对应于现有实体,则页面将正常呈现。但是,如果标识符不是已知实体(由其在存储库中的存在确定),我希望系统执行与 404 Not Found 对应的任何操作。然而,我不知道这一点,直到路由已经匹配并且我的页面的 OnInitialized() 正在执行。

在这种情况下,我如何“重定向”到默认的 404 处理。

该页面如下所示:

@page "/{projectname}"

<!-- HTML Here -->

@code {


[Parameter]
public string ProjectName {get; set;}

private UpdateProjectViewModel Project;

protected override void OnInitialized()
{
var project = Repository.Get(ProjectName);
if (project == null)
{
WANT TO USE 404 ROUTING HERE.
}
Project = new UpdateProjectViewModel(project));
}

}

最佳答案

这是代码片段

@page "/navigate"
@inject NavigationManager NavigationManager

<h1>Navigate in Code Example</h1>

<button class="btn btn-primary" @onclick="NavigateToCounterComponent">
Navigate to the Counter component
</button>

@code {
private void NavigateToCounterComponent()
{
NavigationManager.NavigateTo("404");
}
}

关于c# - 如何在 Razor Page OnInitialized 事件中使用 404 路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59473488/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com