[英]MVC2 Model fields are null on postback
我正在尝试从强类型视图发回给控制器。
问题是模型中有两个我不想允许用户编辑的字段。 理想情况下,我只想将它们显示为标签,但是当我这样做时,它们在发布时为null ...
这是相关的视图代码:这看起来像我想要的样子,即名和姓是标签
<td width="75px"><%: Html.DisplayFor(model=>model.FirstName, new{disabled="true"}) %></td>
<td width="75px"><%: Html.DisplayFor(model => model.LastName)%></td>
<td width="100px"><%: Html.LabelFor(model => model.EmailAddress) %></td>
<td width="75px"><%: Html.TextBoxFor(model => model.EmailAddress) %></td>
<td><%: Html.ValidationMessageFor(model => model.EmailAddress) %></td>
模型看起来像这样:
公共类PersonModel {[必需] [DisplayName(“名字”)]公共字符串FirstName {get; 组; }
[Required]
[DisplayName("Last Name")]
public string LastName { get; set; }
[DisplayName("Email Address")]
public string EmailAddress { get; set; }
}
控制器看起来像这样:
[HttpPost]公共ActionResult RsvpToInvitation(PersonModel SubmittedRsvp){...}
我从所有这些代码中剥离了很多代码...基本上,我的问题是我如何才能显示模型属性作为标签并将其重新发布回控制器?
您可以在视图中将它们设为隐藏字段。
<%: Html.Hidden("LastName", Model.LastName) %>
<%: Html.Hidden("EmailAddress ", Model.EmailAddress) %>
您是否尝试过使用Html.Hidden
帮助器存储值?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.