Asp.net mvc 3 MVC3中POST的视图模型属性为空
我的视图有一个问题,在HTTP POST上,视图模型为我的所有属性返回null 下面是我的视图模型Asp.net mvc 3 MVC3中POST的视图模型属性为空,asp.net-mvc-3,c#-4.0,Asp.net Mvc 3,C# 4.0,我的视图有一个问题,在HTTP POST上,视图模型为我的所有属性返回null 下面是我的视图模型 public class CustomerVM { public List<CustomerCDTO> customerCDTO { get; set; } } 以下是我的看法: <%foreach (var item in Model.customerCDTO) {%> <tr> <td style="text-align: cente
public class CustomerVM
{
public List<CustomerCDTO> customerCDTO { get; set; }
}
以下是我的看法:
<%foreach (var item in Model.customerCDTO) {%>
<tr>
<td style="text-align: center; width: 10%;" class="table-content-middle">
<%if (item.Active == true)
{%>
<%=Html.CheckBoxFor(m=>item.Active)%>
<%}
else
{ %>
<%=Html.CheckBoxFor(m=>item.Active)%>
<%}%>
</td>
<td class="table-content-middle" align="center" style="width: 80%;">
<%: item.Name%>
</td>
</tr>
<%} %>
当我执行HTTP GET时,一切正常,但在POST中,CustomerVM.customerCDTO的值为null
请建议我应该做些什么使它工作
谢谢,这是因为您无法使用包含列表中信息的表达式访问每个CustomerCDTO 改为使用for循环:
<%for (var i = 0; i < Model.customerCDTO.Count; ++i)
并使用以下表达式引用元素
<%=Html.CheckBoxFor(m => m.customerCDTO[i].Active)%>
基本上你需要有一个表达式m=>。。。解析为您感兴趣的属性,从m开始,而不是从其他变量开始。这是因为您无法使用包含列表中的信息的表达式访问每个CustomerCDTO 改为使用for循环:
<%for (var i = 0; i < Model.customerCDTO.Count; ++i)
并使用以下表达式引用元素
<%=Html.CheckBoxFor(m => m.customerCDTO[i].Active)%>
基本上你需要有一个表达式m=>。。。解析到您感兴趣的属性,从m开始,而不是从其他变量开始。大家好,它对我的项目运行良好。Active%>但它不会为…提供nullsuggest@aamankhaan:什么是商品?答案中没有这样的变量。我已经根据答案修改了我的代码,只有下面的完整视图。m、 customerCDTO[i].Active%>m.customerCDTO[i].Active%>m.customerCDTO[i].Name%>很抱歉上面的评论太多了,请找到下面的完整描述的链接。您好,它对我的项目很好。Active%>但它没有为我的…提供空值suggest@aamankhaan:什么是商品?答案中没有这样的变量。我已经根据答案修改了我的代码,只有下面的完整视图。m、 customerCDTO[i].Active%>m.customerCDTO[i].Active%>m.customerCDTO[i].Name%>很抱歉上面的评论太多了,请查找下面的链接,并提供完整的说明