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.")
{
}
}
- 最后,在之前的错误中间件里面,捕捉这个错误,并返回特定结果

浙公网安备 33010602011771号