任何人都知道如何創建一個方法(我將把它放在擴展類中)與僅使用表達式的mvc的RedirectToAction(沒有魔術字符串)相同。asp.net mvc:將RedirectToAction(字符串,對象)轉換爲RedirectToAction <Controller>(x => x.Detail(id))
這樣,而不是寫是這樣的:
RedirectToAction("Detail",
new RouteValueDictionary { {"messageId", messageId}});
我會做這樣的:
this.RedirectToAction(x => x.Detail(messageId));
我想,做這樣的事情,但我不知道如何添加參數:
public static RedirectToRouteResult RedirectToAction<T>(this T controller,
Expression<Action<T>> expression)
{
return RedirectToAction(
(expression.Body as MethodCallExpression).Method.Name
);
}
AAAAH,沒有的Contrib期貨。 +1 – Will 2010-01-20 19:02:01
這個貢獻是在mvc2上,而且我仍然使用mvc 1 – Omu 2010-01-21 09:24:54
MVC1版本也在那裏,例如http://mvccontrib.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=33401。 – queen3 2010-01-21 14:44:56