Ultimate ASP.NET CORE 6.0 Web API --- 读书笔记(6)
Getting Additional Resources
本文内容来自书籍: Marinko Spasojevic - Ultimate ASP.NET Core Web API - From Zero To Six-Figure Backend Developer (2nd edition)
需要本书和源码的小伙伴可以留下邮箱,有空看到会发送的
6.1.1
Service
从repository
中获取的数据,有可能是null的,所以我们需要验证这个,如果没有,需要返回NotFound
这个结果给客户端,但是不能将这些逻辑溢出到控制器
那么,我们可以自定义一些错误,然后在特定时候抛出,然后在全局错误处理中捕捉,并返回特定的结果给客户端
-
首先,在
Entities
中创建自定义错误,Exceptions/NotFoundException
,错误要继承Exception
-
再创建一个特定的错误类型
CompanyNotFoundException
,这个继承NotFoundException
public sealed class CompanyNotFoundException : NotFoundException
{
public CompanyNotFoundException(Guid companyId)
: base($"The company with id: {companyId} doesn't exist in the database.")
{
}
}
- 最后,在之前的错误中间件里面,捕捉这个错误,并返回特定结果
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?