Linq ViewModel中的空值

Linq ViewModel中的空值,linq,asp.net-mvc-2,viewmodel,Linq,Asp.net Mvc 2,Viewmodel,我有一个ViewModel(StoreViewModel)。当我从视图到控制器(Post)获取VM中的值时,一些值为null,只有视图上显示的一些值不是null 请帮帮我 public class StoreViewModel { public StoreViewModel() { } public Store Store { get; set; } public List<Member> Members { get;

我有一个ViewModel(StoreViewModel)。当我从视图到控制器(Post)获取VM中的值时,一些值为null,只有视图上显示的一些值不是null

请帮帮我

    public class StoreViewModel
    {
        public StoreViewModel() { }
        public Store Store { get; set; }
        public List<Member> Members { get; set; }
        public List<Order> Orders { get; set; }
        public List<AccountPayable> AccountsPayable { get; set; }
    }

您应该确保该值实际存在于POST请求中。您得到的
null
这一事实强烈表明情况并非如此。您可以使用查看将哪些值发布到服务器

此外,从我所看到的情况来看,您的表单只包含存储名称和状态文本字段,因此这些是您希望在POST操作中返回的唯一值:

<% using(Html.BeginForm()) {%>
    <div><%: Html.TextBoxFor(model => model.Store.Name) %></div>
    <div><%: Html.TextBoxFor(model => model.Store.State) %></div>
    <div><input type="submit" value="Submit" /></div>
<% } %>

你能给我们看一下你的控制器代码吗?
[HttpPost]
        public ActionResult Details(Finger finger, StoreViewModel storeVM)
        {
            //if (finger.roleName != "Administrator")
            //    return RedirectToAction("DisplayNotice", "Notice");
            storeVM.Store.Active = (CheckBoxHelpers.GetValue(storeVM.Store.Active)).ToString();
            if (ModelState.IsValid)
            {               
                storesRep.SaveStore(storeVM.Store, true);
            }
            else
            {
                return View(storeVM);
            }

            return RedirectToAction("List", "Stores");
        }
<% using(Html.BeginForm()) {%>
    <div><%: Html.TextBoxFor(model => model.Store.Name) %></div>
    <div><%: Html.TextBoxFor(model => model.Store.State) %></div>
    <div><input type="submit" value="Submit" /></div>
<% } %>
<%: Html.HiddenFieldFor(model => model.Store.Active) %>