這裏就是我想要做的事:將模型對象傳遞給RedirectToAction而不污染URL?
public ActionResult Index()
{
return View();
}
[HttpPost]
public ActionResult Index(ContactModel model)
{
if (ModelState.IsValid)
{
// Send email using Model information.
return RedirectToAction("Gracias", model);
}
return View(model);
}
public ActionResult Gracias(ContactModel model)
{
return View(model);
}
這三種操作方法是在同一個控制器。基本上,用戶在聯繫表單中鍵入一些數據,我想用Model對象中的名稱將它們重定向到一個感謝頁面。
由於代碼是,它的工作原理,但URL與GET變量一起傳遞。不理想。
http://localhost:7807/Contacto/Gracias?Nombre=Sergio&Apellidos=Tapia&Correo=opiasdf&Telefono=oinqwef&Direccion=oinqef&Pais=oinqwef&Mensaje=oinqwef
有什麼建議嗎?
我不知道,你可以複雜類型保存到TempData的字典。 TIL。謝謝! – sergserg
只要它們是可序列化的! TempData存儲在會話中,只允許Serializable對象/類。 –
臨時數據當然可以在這裏工作,但爲什麼不直接從索引顯示「Gracias」視圖(模型已經在範圍內)。您還可以將自己保存爲一次實質上無用的重定向的服務器往返。 –