我的目标是开发一个自定义 FilterAttribute,我可以在 ASP.NET Web API 上应用一个操作,其中应该发生两件事之一,但结果必须相同:
预期结果:如果某些条件得到验证,则应取消或重定向操作执行并返回不同的对象;
在 mvc 的过滤器属性上,我只需要在覆盖特定方法时更改操作名。
有没有人知道如何在 webapi 过滤器属性上做同样的事情?
解决方案:
if (true)
{
IHttpRouteData x = request.Properties["MS_HttpRouteData"] as IHttpRouteData;
x.Values["action"] = "IsUnavailableBecause";
}