Como posso obter o actionName em um ActionFilter?
-
05-07-2019 - |
Pergunta
este é o meu código antigo
protected override bool OnPreAction(string actionName, System.Reflection.MethodInfo methodInfo)
{
if ("|Register|RegisterPage|Login|LoginPage|Logout|Service".ToLower().Contains(actionName.ToLower()))
{
return base.OnPreAction(actionName, methodInfo);
}
Customer = CustomerHelper.GetCustomer();
if (Customer.IsSeccessedLogin())
{
return base.OnPreAction(actionName, methodInfo);
}
Response.Redirect("Login.html");
return false;
}
Solução
string actionName = (string)filterContext.RouteData.Values["action"];
Outras dicas
FYI, a partir de RC1, você fazê-lo como este:
filterContext.ActionDescriptor.ActionName
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow