我有几个控制器,每个控制器都有代表 REST端点。
我想根据条件调用这些操作
是否可以使用具有属性的过滤器而不在所有操作中都使用(if..else)语句来实现它?
如果是的话,能否请您提供做事的概要?
谢谢。
答案 0 :(得分:0)
如果它是asp.net核心,请检查此链接https://docs.microsoft.com/en-us/aspnet/core/mvc/controllers/filters?view=aspnetcore-2.2
您可以这样做
public class SampleAsyncActionFilter : IAsyncActionFilter
{
public async Task OnActionExecutionAsync(
ActionExecutingContext context,
ActionExecutionDelegate next)
{
if (...)
{
// do something before the action executes
var resultContext = await next();
// do something after the action executes; resultContext.Result will be set
}
}
}