【发布时间】:2013-12-12 09:52:25
【问题描述】:
这是我的模型:
public string CustomerNumber { get; set; }
public string ShipMethod { get; set; }
public string ContactPerson { get; set; }
public string ShipToName { get; set; }
public string Address1 { get; set; }
public string Address2 { get; set; }
public string Address3{ get; set; }
public string City { get; set; }
public string State { get; set; }
public string ZipCode { get; set; }
这是我的部分观点:
<table class="table table-condensed">
<thead>
<tr>
<td>Customer Number</td>
<td>Ship Method</td>
<td>Contact Person</td>
<td>Ship to Name</td>
<td>Address 1</td>
<td>Address 2</td>
<td>Address 3</td>
<td>City</td>
<td>State</td>
<td>Zip</td>
</tr>
</thead>
<tbody>
<tr>
<td>@Html.LabelFor(x => x.CustomerNumber, Model.CustomerNumber)</td>
<td>@Html.LabelFor(x => x.ShipMethod, Model.ShipMethod)</td>
<td>@Html.LabelFor(x => x.ContactPerson, Model.ContactPerson)</td>
<td>@Html.LabelFor(x => x.ShipToName, Model.ShipToName)</td>
<td>@Html.LabelFor(x => x.Address1, Model.Address1)</td>
<td>@Html.LabelFor(x => x.Address2, Model.Address2)</td>
<td>@Html.LabelFor(x => x.Address3, Model.Address3)</td>
<td>@Html.LabelFor(x => x.City, Model.City)</td>
<td>@Html.LabelFor(x => x.State, Model.State)</td>
<td>@Html.LabelFor(x => x.ZipCode, Model.ZipCode)</td>
</tr>
</tbody>
</table>
数据正确显示在视图中,但是当我的页面上发生帖子时,数据返回 null。我需要将那些 LabelFors 中的数据发送回我的控制器,因此我不必将其存储在会话中。我认为 MVC 应该使用 labelfors 自动绑定到您的模型。我做错了什么?
编辑
我想我问这个问题的原因是因为我刚从 webforms 转移到 MVC,没有视图状态我很迷茫。我想如果我的模型中的值不断地从视图中返回给我,我就不必将我的模型存储在会话对象中。在我的页面上,我需要能够在页面周期内持久化我的模型,这样我就可以在用户单击保存按钮后将我的模型数据存储到一些 sql 表中。有哪些选项可以将您的模型持久保存在 MVC 中?
【问题讨论】:
标签: c# asp.net-mvc asp.net-mvc-4