Reputation: 4126
Im a bit confused if some session variable is empty i want to result in to a partial view instead of redirectResult. Is it possible? if so how? i can see that there are a PartialViewResult, but i cant figure out how to use it.
public class XXActionFilter : ActionFilterAttribute, IActionFilter
{
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
HttpContext context = HttpContext.Current;
if ((context.Session[item] == null))
{
filterContext.Result = my partial view
return;
}
base.OnActionExecuting(filterContext);
}
}
Upvotes: 2
Views: 1638
Reputation: 12324
You should just pass the instance of PartialViewResult
to the Result
property:
public class XXActionFilter : ActionFilterAttribute, IActionFilter
{
public override void OnActionExecuting(ActionExecutingContext filterContext)
{
HttpContext context = HttpContext.Current;
if ((context.Session[item] == null))
{
var result = new PartialViewResult
{
ViewName = "PathToView"
};
filterContext.Result = result;
return;
}
base.OnActionExecuting(filterContext);
}
}
Upvotes: 5