我正在尝试在 asp.net mvc 2 rc 应用程序中使用 PRG 模式。
我发现 MVCContrib 项目有一个自定义操作过滤器,它将自动将参数保留在 TempData
在一个动作中,我有以下内容
return this.RedirectToAction(c => c.Requested(accountAnalysis));
但是,这是向请求添加查询字符串参数,例如
http://mysite.com/account/add?model=MyProject.Models.AccountAnalysisViewModel
谁能解释我如何使用 MVCContrib 中的 PassParametersDuringRedirect 过滤器属性来不在查询字符串中传递 ViewModel 类型。
我看到发布了一个补丁来解决这个问题,但是在支持 MVC 2 RC 的最新 MvcContrib 中,它被注释掉如下
public static RedirectToRouteResult RedirectToAction<T>(this Controller controller, Expression<Action<T>> action)
where T : Controller
{
/*var body = action.Body as MethodCallExpression;
AddParameterValuesFromExpressionToTempData(controller, body);
var routeValues = Microsoft.Web.Mvc.Internal.ExpressionHelper.GetRouteValuesFromExpression(action);
RemoveReferenceTypesFromRouteValues(routeValues);
return new RedirectToRouteResult(routeValues);*/
return new RedirectToRouteResult<T>(action);
}
非常感谢任何帮助。
谢谢