0
圖片下面的控制器方法:在ASP.NET MVC控制器方法Ambigious名
public ActionResult ShipmentDetails(Order order)
{
return View(new OrderViewModel { Order = order });
}
傳入訂單參數從自定義模型粘合劑填補,要麼創造了本次會議,並將其存儲新秩序在會議中,或重新使用當前會話中的現有訂單。此訂單實例現在用於填寫貨件詳細信息表單,用戶可以在其中輸入地址等。
在視圖中使用@using(Html.BeginForm())
時。我不能再次使用相同的簽名爲post方法(因爲這會導致方法名稱不明確),我發現我添加了一個虛擬參數來完成這項工作。
[HttpPost]
public ActionResult ShipmentDetails(Order order, object dummy)
{
if (!ModelState.IsValid)
return RedirectToAction("ShipmentDetails");
return RedirectToAction("Initialize", order.PaymentProcessorTyped + "Checkout");
}
這是什麼最佳實踐?你會簡單地將該方法重命名爲PostShipmentDetails()
,並使用BeginForm
的重載之一?或者問題是從這一點出發的,第一種方法是否有順序參數?
我不知道該ActionNameAttribute。感謝您指出。 – mklein 2011-01-10 22:04:37