services.Configure
这将禁用 ASP.Net Core 的默认行为,使得 ModelState 验证失败时,不再返回 400 Bad Request 响应。
[ApiController] [DisableValidation] // 禁用 ModelState 验证 public class UserController : ControllerBase { // controller actions }
这样,我们就可以在指定的控制器中禁用所有 ModelState 验证。
[HttpPost] [DisableValidation(nameof(CreateUser))] // 禁用特定 Action 中的 ModelState 验证 public IActionResult CreateUser(UserDTO user) { // action code }
其中,nameof(CreateUser) 为需要禁用 ModelState 验证的 Action 名称。
以上就是禁用 null 验证的解决方法。注意,禁用 null 验证可能会导致验证失败时不会触发异常,因此需要谨慎使用。