Kei*_*ill 8 asp.net-core-mvc asp.net-core
在我的MVC4应用程序中,我有一个global.asax.cs覆盖Application_Error(object sender, EventArgs e)我可以提取的地方exception,statusCode以及requestedUrl(用于处理404).这将被发送到我的控制器,错误页面将是不同的404s与5xx(这些获得堆栈跟踪).我没有看到如何使用相同的信息获取我的错误操作UseErrorHandler().我在ASP.NET Core中使用正确的方法吗?
agu*_*ars 14
Startup.cs
using Microsoft.AspNet.Builder;
namespace NS
{
public class Startup
{
...
public virtual void Configure(IApplicationBuilder app)
{
...
app.UseExceptionHandler("/Home/Error");
...
}
}
}
Run Code Online (Sandbox Code Playgroud)
HomeController.cs
using Microsoft.AspNet.Diagnostics;
using Microsoft.AspNet.Http.Features;
using Microsoft.AspNet.Mvc;
using Microsoft.Extensions.Logging;
namespace NS.Controllers
{
public class HomeController : Controller
{
static ILogger _logger;
public HomeController(ILoggerFactory factory)
{
if (_logger == null)
_logger = factory.Create("Unhandled Error");
}
public IActionResult Error()
{
var feature = HttpContext.Features.Get<IExceptionHandlerFeature>();
var error = feature?.Error;
_logger.LogError("Oops!", error);
return View("~/Views/Shared/Error.cshtml", error);
}
}
}
Run Code Online (Sandbox Code Playgroud)
project.json
...
"dependencies": {
"Microsoft.AspNet.Diagnostics": "1.0.0",
...
}
...
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5635 次 |
| 最近记录: |