【发布时间】:2018-03-13 11:40:17
【问题描述】:
C# 中是否提供了针对 http 异常的内置或库?
例如来自 Java,它们都有 400 和 500 错误。他们提供了一堆这样的异常,所以你可以在你的代码中抛出。
https://docs.oracle.com/javaee/7/api/javax/ws/rs/ClientErrorException.html
javax.ws.rs.NotAllowedException
javax.ws.rs.BadRequestException
javax.ws.rs.NotFoundException
用例:
比较在“控制器”中抛出了什么样的异常,然后在“视图”层做出相应的响应,这很有帮助,例如,根据每种类型所需的合同,我有不同类型的自定义响应例外。
想知道是否有 3rd 方开源库或内置自定义类型可以在 C# 中进行比较。
编辑
仍然没有成功。在URL 遇到了一些接近的东西,但无法让它在 .NET 核心上运行,我认为它可以在 .net 标准上使用吗?我在运行 .net core 的 mac 上。
我想我最终会创建自己的自定义 HttpException 类,并将状态代码作为 int 字段。
【问题讨论】:
-
使用 try catch 块,您可以捕获特定异常、webexceptions、soapexceptions,解释状态代码并相应地处理它。
-
我正在运行 .net core,知道为什么我在 system.Web 命名空间中看不到 HttpException 吗?
-
我建议在编写 C# 时不要用 Java 思考。拥有 n 个特定异常类型或一个异常类型并打开状态代码有什么区别……除了个人品味,恕我直言。
-
是的,我明白,这不是 java 与 c#,它是常见的东西并寻找类型化的异常,这就是允许使用枚举、代码等的全部或一些东西。
标签: c# exception http-error