首页 > 编程语言 >ASP.NET Core 内置异常中间件的三种方法

ASP.NET Core 内置异常中间件的三种方法

时间:2023-12-28 12:22:05浏览次数:40  
标签:Core ASP app 中间件 ex context var Response

方法一

app.UseExceptionHandler(configure =>{
    configure.Run(async context => {
        var excHandler = context.Features.Get<IExceptionHandlerPathFeature>();
        var ex = excHandler.Error;
        if(ex != null)
        {
            context.Response.ContentType = "text/plain;charset=utf-8";
            await context.Response.WriteAsync(ex.ToString());
        }
    });
});

方法二

app.UseExceptionHandler(new ExceptionHandlerOptions(){
    ExceptionHandler = async context =>{
        var handler = context.Features.Get<IExceptionHandlerPathFeature>();
        var ex = handler.Error;
        if(ex != null)
        {
            context.Response.ContentType = "text/plain;charset=utf-8";
            await context.Response.WriteAsync(ex.ToString());
        }
    }
});

方法三

app.UseExceptionHandler(new ExceptionHandlerOptions{
    ExceptionHandlingPath = new PathString("/error")
});
app.Map("/error", () =>{
    return "error";
});

如果程序内部的异常被捕获掉,无论是异常中间件还是异常过滤器都不能捕获到。

标签:Core,ASP,app,中间件,ex,context,var,Response
From: https://www.cnblogs.com/leafroc/p/17932440.html

相关文章

  • Vue脚手架中加入Vuex全局状态管理中间件
    WebStorm创建Vite(Vue模版)项目后:在main.ts中:import{createApp}from'vue'//@ts-ignoreimport{createStore}from'vuex'import'./style.css'//@ts-ignoreimportAppfrom'./App.vue'//@ts-ignoreconststore=createSt......
  • edgecore.yaml
    CRD-config devices_v1alpha2_device.yaml---apiVersion:apiextensions.k8s.io/v1kind:CustomResourceDefinitionmetadata:annotations:controller-gen.kubebuilder.io/version:v0.6.2creationTimestamp:nullname:devices.devices.kubeedge.iospe......
  • 归一化方法-Z-score
    归一化方法-Z-scoreZ-score定义z-score精确测量偏离数据点均值的标准差数。公式如下:\(z=\frac{data\point-mean}{standard\deviation}\),标准数学公式为:\(z=\frac{x-\mu}{\sigma}\)几个z-score相关的重要性质:z-score如果是正值,说明数据点高于均值;z-score如果是......
  • core文件的产生及gdb调试core文件方法
    参考:https://blog.csdn.net/u011417820/article/details/71435031?spm=1001.2101.3001.6650.1&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7ERate-1-71435031-blog-109817499.235%5Ev40%5Epc_relevant_3m_sort_dl_base1&d......
  • 不会使用 EF Core 的 Code First 模式?来看看这篇文章,手把手地教你
    EFCoreCodeFirst是什么CodeFirst是EntityFrameworkCore(简称EFCore)的一种开发模式,它允许开发人员使用纯粹的代码来定义数据模型,通过它,可以极大地提高开发效率:使用CodeFirst开发模式,你可以专注于定义领域模型和业务逻辑,而无需关注数据库的细节,能够更快地构建应......
  • Taurus .Net Core 微服务开源框架:Admin 插件【4-7】 - 配置管理-Mvc【Plugin-Metric
    前言:继上篇:Taurus.NetCore微服务开源框架:Admin插件【4-6】-配置管理-Mvc【Plugin-Doc接口测试及文档】本篇继续介绍下一个内容:系统配置节点:Mvc- Plugin-Metric接口调用次数统计:配置界面如下:1、Metric.IsEnable:配置当前接口统计插件是否可用打开开关时,可以通......
  • AspNetCore的单元测试
    一、单元测试项目如何创建VisualStudio新建项目,项目类型选择测试。 可以看到有许多选项,都大差不差。这里选择xUnit。项目名使用要测试的项目名加上“.Tests”后缀。二、进行单元测试首先明确测试对象,通常是针对一个类型进行测试,新建Test类,类名为测试对象的类名加上“Test......
  • 第1章 Entity Framework Core 简介
    第1部分入门数据无处不在,每年以PB的速度增长,其中很多数据存储在数据库中。数以百万计的应用程序也在那里——2021年初,有12亿个网站——其中大部分需要访问数据库中的数据。而且我还没有开始考虑物联网。因此,领先的研究和咨询公司Gartner表示,到2021年全球IT支出将达......
  • 在 IIS 上生成经典 ASP 网站
    场景:在IIS上生成经典ASP网站本文档将指导你完成安装IIS和配置经典ASP网站的过程。经典ASP是服务器端脚本环境,可用于创建和运行动态Web应用程序。借助ASP,你可以将HTML页面、脚本命令和COM组件组合在一起,从而创建易于开发和修改的交互式网页。经典ASP是ASP.......
  • 【HMS Core】{"sub_error":20003,"error_description":"parameter invalid",&
    ​ 【问题描述】离线推送服务端报错{"sub_error":20003,"error_description":"parameterinvalid","error":1101} 【解决方案】错误码1101代表是client_id在系统中不存在,需要检查一下APPID是否配置正确​​......