routes - .Net Core 3 Razor 页面捕获 404
问题描述
我是 Razor 页面的新手,我用 3 个页面构建了一个原型
主机/家庭
主机/登录
主机/注销
主机/错误
它正在工作,但我想知道如何捕获 404。例如,如果我调用 host/nonEsistingPage 或 host/somethingelse,我想重定向到 host/Home。
我怎样才能实现它?
解决方案
尝试UseStatusCodePages
在 .net core 中使用中间件。默认情况下,ASP.NET Core 应用不提供 HTTP 状态代码的状态代码页,例如 404 - Not Found。
调用:UseStatusCodePages
_Startup.Configure method
app.UseStatusCodePages();
如果您想重定向到任何特定的网址,请使用
app.UseStatusCodePagesWithRedirects("/host/Home?code={0}");
在 .Net Core 文档中探索有关 app.UseStatusCodePages() 的更多信息:https ://docs.microsoft.com/en-us/aspnet/core/fundamentals/error-handling?view=aspnetcore-3.1
推荐阅读
- android - Can I have same Java file with different versions for debug and release?
- asp.net-mvc - 如果数组使用 linq 查询返回空,则需要插入字符串
- kubernetes - Kubernetes 作业无法识别环境
- mysql - Google Cloud SQL - 不支持外部主 gtid_mode:“关闭”。请确保 gtid_mode 设置为 'ON'
- javascript - 如何调试在 testcafe/testcafe docker 容器中运行的 Testcafe 浏览器?
- excel - 将 X 添加到字符串末尾正好 7 个字符(不包括逗号)
- xcode - 如何下载 Xcode 进行颤振开发
- python - 全局变量是烧瓶网站应用程序的好主意吗?
- javascript - 如何在没有jquery的情况下自动向下滚动iframe到底部
- windows - 重新访问 NASM 64 中 Windows API 中的 CreateFileA:无效参数