問題描述
如何從 ViewData 為 MVC2 Html.HiddenFor 設置一個值 (How to set a value for MVC2 Html.HiddenFor from ViewData)
I tried below method, but it does not work:
<%: Html.HiddenFor(m => m.Email, (string)ViewData["Email"])%>
<%: Html.HiddenFor(m => m.Email, new{value = (string)ViewData["Email"]})%>
Plz adivce.
參考解法
方法 1:
In ASP.NET MVC data is set by the controller. A view is there only to display the data passed by a controller. Also I would recommend you using strongly typed views and view models instead of ViewData.
public ActionResult Index()
{
var model = new SomeViewModel
{
Email = "foo@bar.com"
};
return View(model);
}
And in the view simply:
<%= Html.HiddenFor(m => m.Email) %>
(by mothee、Darin Dimitrov)