I have a, ActionFilterAttribute and on its OnExecuting event, I am validating the request. And if it's not an authorized request, I am doing something like:
if(notAuthorized){
filterContext.HttpContext.AddError(new Exception("Invalid Request !!"));
}
So, for the unauthorized requests, it adds the exception and continues executing the action. My question is how to stop the processing at this point? I have tried:
filterContext.HttpContext.Response.End();
but no success. Please reply.
Checking for errors in the action will be an option though, but I am looking for the change in the action filter itself, so that we don't need to change in each action.
Just set the
Result
of thefilterContext
:If you want to allow access to authenticated users only, you better use the
Authorize
filter instead.UPDATE:
Since you want to render an error View upon failed authorization, try this: