2012-11-18 17 views
4

我可以将数据传递给控制器​​而不使用Html.EditorFor等吗?
只需通过使用类似简单的HTML输入:从没有Html帮助者的表单传递数据

查看:

@using (Html.BeginForm("Add", "Parameter", FormMethod.Post, new { enctype = "multipart/form-data" })) 
{ 

    <fieldset> 
     <input type="text" name="product.Name" id="product.Name"/> 
     <input type="text" name="product.Description" id="product.Description"/> 
     <input type="submit"> 
    </fieldset> 
} 

控制器:

[HttpPost] 
public ActionResult Add(Product product) 
{ 
    return null; 
} 

回答

1

当然可以,但你需要调整的输入的名称到ViewModel属性名称:

<input type="text" name="product.Name" id="product.Name"/> 
<input type="text" name="product.Description" id="product.Description"/> 

应该是:

<input type="text" name="Name" id="name"/> 
<input type="text" name="Description" id="description"/> 

你不应该添加视图模型类型作为前缀输入名称。