gpt4 book ai didi

c# - ASP.Net 5 MVC 6,如何使用共享的 Error.cshtml 作为默认错误响应

转载 作者:行者123 更新时间:2023-12-03 09:23:01 25 4
gpt4 key购买 nike

ASP.Net 5 MVC 6,如何使用共享的 Error.cshtml 作为默认错误响应

使用带有 Razor View 的 Microsoft.AspNet.Diagnostics UseExceptionHandler 中间件时

如果您查看 https://github.com/aspnet/Diagnostics/tree/dev/samples/ExceptionHandlerSample/Startup.cs 处的示例代码
解释如何为 ASP.Net 5 使用 Microsoft.AspNet.Diagnostics ErrorHandler 中间件,评论说:

//通常你会使用 MVC 或类似的方法来呈现一个漂亮的页面。

好的,但是怎么做呢?

public class Startup
{
public void Configure(IApplicationBuilder app)
{
// Configure the error handler to show an error page.
app.UseExceptionHandler(errorApp =>
{
// Normally you'd use MVC or similar to render a nice page.
errorApp.Run(async context =>
{

最佳答案

在启动类中:

app.UseExceptionHandler("/Home/Error");

在家庭 Controller 中:
public IActionResult Error()
{
var feature = this.HttpContext.Features.Get<IExceptionHandlerFeature>();
return View("~/Views/Shared/Error.cshtml", feature?.Error);
}

Error.cshtml View 可能如下所示:
@model Exception

@{
ViewBag.Title = "Oops!";
}
<h1 class="text-danger">Oops! an error occurs</h1>
<h2 class="text-danger">An error occurred while processing your request.</h2>
@if (Model != null)
{
@Html.ValueFor(model => model.Message)
}

此代码是 GitHub 上可用项目的一部分

关于c# - ASP.Net 5 MVC 6,如何使用共享的 Error.cshtml 作为默认错误响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27626353/

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