Hyp*_*ate 1 c# .net-core asp.net-core asp.net-core-webapi
我编写了一个 ActionFilter 来检查我的模型状态是否有效(这样我就可以记录问题):
public class ValidationFilter : ActionFilterAttribute
{
public override void OnActionExecuting(ActionExecutingContext context)
{ ... }
}
Run Code Online (Sandbox Code Playgroud)
我的断点从未被命中,我在 Postman 中得到了输出:
{ "errors": {
"RequiredText": [
"Test - requiredText is required"
]
},
"title": "发生一个或多个验证错误。",
"status": 400,
"traceId": "0HLOBA7E4R7SL:00000002"
}
我假设 .NET Core 预先进行了验证。
有没有办法关闭此功能,以便使用我的属性?
SuppressModelStateInvalidFilter我认为您必须通过将选项设置为 true 来禁用默认行为。您可以在ConfigureServices 方法中将此选项设置为true。喜欢,
public void ConfigureServices(IServiceCollection services)
{
services.Configure<ApiBehaviorOptions>(options =>
{
options.SuppressModelStateInvalidFilter = true;
});
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
673 次 |
| 最近记录: |