ASP.NET Core – Handle Error on Web API

前言

上一篇讲了 ASP.NET Core – Handle Error on Razor Page

这一篇继续说说 Web API 的错误处理.

主要参考

Handle errors in ASP.NET Core web APIs

Model validation in ASP.NET Core MVC and Razor Pages

Development 期的错误处理

和 Razor Page 是一样的, 我们不需要做任何设置.

Production 期的错误处理

如果什么也不做, 它的返回是

404 返回

如果想 custom 处理的话, 可以使用和 Razor Page 一样的方式. 只是返回的不是 View 而是 JSON

另外, 如果 Web API 和 Razor Page 是在同一个 Application 里的话, 可以通过 app.UseWhen 判断 path starts with /api 分开来配置, 参考这篇

Model Validation Error

Web API 最需要 user-friendly 的地方就是这个 Model Validation Error 了. 

ASP.NET Core 已经有一套

public class CreateDto
{
    [Required]
    public string Name { get; set; } = "";
}

返回

具体它怎样 work, 如何 custom, 如何配合 FluentValidationAPI 那个以后我再写一篇来讲.

原文地址:https://www.cnblogs.com/keatkeat/p/15441448.html