ASP。网络核心异常和错误处理的案例

  介绍

这篇文章给大家分享的是有关ASP。网络核心异常和错误处理的案例的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。

在这一章,我们将讨论异常和错误处理,当ASP。网络核心应用程序中发生错误时,您可以以各种不同的方式来处理。让我们来看看通过添加一个中间件来处理异常情况,这个中间件将帮助我们处理错误。

要模拟出的错,让我们转到应用程序,运行,如果我们只是抛出异常的话,看看程序是如何运转转的。

;
  使用Microsoft.AspNet.Hosting;
  使用Microsoft.AspNet.Http;
  使用Microsoft.Extensions.DependencyInjection;
  使用Microsoft.Extensions.Configuration;
  名称空间FirstAppDemo {
  公共类启动{
  公共公司(){
  var builder=new ConfigurationBuilder ()
  .AddJsonFile (“AppSettings.json");
  配置=builder.Build ();
  }
  公共IConfiguration配置{得到;设置;}//此方法由运行时调用。//使用这种方法将服务添加到容器中。//alt=" ASP的更多信息。网络核心异常和错误处理的案例"> 

您将看到我们未能加载此资源。出现了一个HTTP 500错误,内部服务器错误,那个页面不是很有帮助。它可能很方便得到一些异常信息。

让我们添加另一个中间件UseDeveloperExceptionPage。

//此方法由运行时调用。//使用这种方法来配置HTTP请求的管道。   公共空间配置(IApplicationBuilder app) {   app.UseIISPlatformHandler ();   app.UseDeveloperExceptionPage ();   app.UseRuntimeInfoPage ();      app.Run(异步(上下文)=比;{   把新System.Exception(“扔Exception");   var味精=配置(“message");   等待context.Response.WriteAsync(味精);   });   }

这个中间件与其他的有点不同,其他中间件通常监听传入的请求并对请求做一些响应。

UseDeveloperExceptionPage不会如此在意传入的请求在之后的管道会发生什么。

它只是调用下一个中间件,然后再等待,看看管道中是否会出现异常,如果有异常,这块中间件会给你一个关于该异常的错误页面。

现在让我们再次运行应用程序。将会产生一个如下面的屏幕截图所示的输出。

 ASP。网络核心异常和错误处理的案例

现在如果程序中出现异常,您将在页面中看到一些想要看到的异常信息。你也会得到一个堆栈跟踪:这里可以看到启动。cs第37行有一个未处理的异常抛出。

所有这些异常信息对开发人员将非常有用。事实上,我们可能只希望当开发人员运行应用程序时才显示这些异常信息。

感谢各位的阅读!关于ASP。网络核心异常和错误处理的案例就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到吧!

ASP。网络核心异常和错误处理的案例