gpt4 book ai didi

c#-4.0 - Web APi 中的每个操作后触发特定方法

转载 作者:行者123 更新时间:2023-12-02 20:14:08 24 4
gpt4 key购买 nike

我正在编写一个 ASP.NET WEB API。

执行操作后我想调用一个方法。

例如:

 public string Action1(object a)
{
// ...
// call method1();
return "sample1";
}

public string Action2(object b)
{
// ...
// call method1();
return "sample2";
}

是否有一种方法可以在每个操作中调用 method1() 而无需在每个操作中提及?

最佳答案

您可以实现自定义System.Web.Http.Filters.ActionFilterAttribute并在OnActionExecuted(...)内调用method1() :

public class MyActionFilter : System.Web.Http.Filters.ActionFilterAttribute
{
public override void OnActionExecuted(HttpActionExecutedContext actionExecutedContext)
{
// call method1();
// ...
base.OnActionExecuted(actionExecutedContext);
}
}

然后,您可以在操作、 Controller 上使用此[MyActionFilter],或者将其添加到WebApiConfig.cs中的全局配置:

        config.Filters.Add(new MyActionFilter());

关于c#-4.0 - Web APi 中的每个操作后触发特定方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13612364/

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