Reputation: 2167
I'm trying to make an extension
public static ActionResult RedirectToIndexAction(this Controller controller)
{
return RedirectToAction("Index");
}
for RedirectToAction("Index")
makes RedirectToIndexAction();
Upvotes: 1
Views: 732
Reputation: 71
HOw about something like below :
public static RedirectToRouteResult RedirectToAction<TController>(this Controller controller, Expression<Action<TController>> action, object routeValues) where TController : Controller
{
RouteValueDictionary routeValuesFromExpression = ExpressionHelper.GetRouteValuesFromExpression(action);
var routeValueDictionary = new RouteValueDictionary(routeValues);
foreach (KeyValuePair<string, object> keyValuePair in routeValueDictionary)
{
routeValuesFromExpression.Add(keyValuePair.Key, keyValuePair.Value);
}
return new RedirectToRouteResult(routeValuesFromExpression);
}
private RedirectToRouteResult RedirectToIndex()
{
return this.RedirectToAction<MyController>(c => c.Index(), new { Area = "" });
}
Upvotes: 1