1

Please some one show any possibility to allow anonymous visitor but not allow logged in user on action method in c# mvc5.

In my case i have to not allow only some specific user as per their role

ex User in Admin role Not allowed

but

User in Worker role is allowed

kyrylomyr
  • 12,192
  • 8
  • 52
  • 79
Nirav Solanki
  • 89
  • 1
  • 11

1 Answers1

0

Finally i get correct solution

public class AllowAnonymousOnlyAttribute : ActionFilterAttribute
    {
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            bool userId = HttpContext.Current.User.Identity.IsAuthenticated;
            if (userId)
            {
                if (HttpContext.Current.User.IsInRole("Admin") || HttpContext.Current.User.IsInRole("Doctor"))
                {
                    filterContext.HttpContext.Response.Redirect("/Home/Index");

                }
            }
            base.OnActionExecuting(filterContext);
        }
    }
Nirav Solanki
  • 89
  • 1
  • 11