我們會使用 Validation Attribute 來客製化 Validation 的輸出結果,但在 .Net 7 的專案突然失效了。原因是 [ApiController] 會自動回傳 400 錯誤,攔截了 Validation Attribution 的執行。
解決方法, 在 program.cs 中加上以下的程式碼:
builder.Services.Configure<ApiBehaviorOptions>(options
=> options.SuppressModelStateInvalidFilter = true);