gpt4 book ai didi

c# - 从 OnActionExecutionAsync 返回而不在 asp.net 核心中执行操作

转载 作者:行者123 更新时间:2023-12-05 00:59:00 26 4
gpt4 key购买 nike

这里我想从自定义 Action 过滤器返回,而不执行中的controller action method >asp.net core WEB API.

以下是我对示例 code 的要求。

public override async Task OnActionExecutionAsync(ActionExecutingContext context, ActionExecutionDelegate next)
{
bool valid=SomeMethod();
if(valid)
//executes controller action
else
//returns without executing controller action with the custom message (if possible)
}

我已经搜索并找到了一些相关的问题和答案,但对我没有任何帮助。

找到了这个await base.OnActionExecutionAsync(context, next); 但是它跳过了filters的剩余逻辑,直接执行controller action所以不适用于我的场景。

最佳答案

public override async Task OnActionExecutionAsync(ActionExecutingContext context, ActionExecutionDelegate next)
{
bool valid=SomeMethod();
if(valid)
await next();
else
context.Result = new BadRequestObjectResult("Invalid!");
}

关于c# - 从 OnActionExecutionAsync 返回而不在 asp.net 核心中执行操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54882813/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com