Asp.net mvc 3 ASP.NET MVC子表单数据未过帐

Asp.net mvc 3 ASP.NET MVC子表单数据未过帐,asp.net-mvc-3,Asp.net Mvc 3,这似乎很简单,但我遗漏了一些东西: 型号: public class MainModel { public SubModel oSubmodel = new Submodel(); .... } 视图: 控制器: [HttpPost] public ActionResult Index(MainModel oModel) { .... string prop = oModel.prop <-----------ok string pr

这似乎很简单,但我遗漏了一些东西:

型号:

public class MainModel
{

   public SubModel oSubmodel = new Submodel();

....

}
视图:

控制器:

 [HttpPost]
 public ActionResult Index(MainModel oModel)
 {
      ....
      string prop = oModel.prop <-----------ok
      string prop1 = oModel.oSubmodel.prop1   <----------null
  }
[HttpPost]
公共行动结果索引(MainModel oModel)
{
....

string prop=oModel.propRight OK.My Bad。子模型需要作为主模型的属性公开,以便绑定在post上正常工作:

所以

变成:

public class MainModel
{

   public SubModel oSubmodel { get; set; }

....

}

绑定效果很好。感谢那些响应者。

你的控制器方法看起来像什么?我不久前也遇到了同样的问题…请看这个问题:谢谢-我添加了控制器信息。现在看看你提到的问题。但我的要求似乎简单得多。我很确定这是我的愚蠢。你确定val是正确的吗UE实际上是随请求一起传递的?您可以通过fiddler检查这一点…值正在传递到视图。我看到它们显示出来…但是是的,我没有任何内容被发回…我是说发回。在您的视图上生成的输入字段的id是什么?
public class MainModel
{

   public SubModel oSubmodel = new Submodel();

....

}
public class MainModel
{

   public SubModel oSubmodel { get; set; }

....

}