使用QueryString传递Html.ActionLink
中的一些参数是可能的。但是当使用RedirectToAction
时如何传递参数。它只接受路由值,我想将ReturnValue参数添加到目标操作,该操作在执行操作后返回到像Login Mechanism一样,但是如何通过RedirectToAction
?
答案 0 :(得分:0)
可以像这样添加axtension方法
public static class RedirectToRouteExtensions
{
public static RedirectToRouteResult WithQuery(this RedirectToRouteResult redirectResult, string name, string val)
{
redirectResult.RouteValues.Add(name, val);
return redirectResult;
}
public static RedirectToRouteResult And(this RedirectToRouteResult redirectResult, string name, string val)
{
return redirectResult.WithQuery(name, val);
}
}
并使用此:
return RedirectToAction("Index", "Profile", new { area = "Customer").WithQuery("name", "Value");
使用路由值和QueryString做同样的事情,那么他们之间有何不同?
答案 1 :(得分:0)
目标操作方法所需的任何参数都可以在路由值中传递,例如
return RedirectToAction("Action", "Controller", new { returnValue = "returnValue" });