将单个模型传递两次或三次到控制器

时间:2014-11-04 10:11:16

标签: asp.net-mvc-4 asp.net-mvc-partialview

我是asp.net MVC-4的新手,并且在公司/ create.cshtml上两次渲染单个部分视图的情况下,从视图到控制器检索数据时会陷入困境

我的复杂模型如下。

public partial class Company
{
    public int CCode { get; set; }
    public string CName { get; set; }
    public string Addr1 { get; set; }
    public string Addr2 { get; set; }
    public string City { get; set; }
    public string Country { get; set; }
    public string EmailID { get; set; }
    public string Remarks { get; set; }


    public CompanyContacts Contacts { get; set; }
    public partial class CompanyContacts
    {
        public int refCCode_Company { get; set; }
        public int SrNo { get; set; }
        public string ContactPerson { get; set; }
        public string Designation { get; set; }
        public string Contact1 { get; set; }
        public string Contact2 { get; set; }
        public string EmailID { get; set; }
        public string IsActive { get; set; }
    }
}

在CompanyContact中,在company / create.cshtml页面中呈现两次部分视图。

  

“@ model ProjectName.Models.Company”,以便我可以绑定HTML控件,如下所示。 @ HTML.TextBoxFor(model> = model.CompanyContact)

<div class="tab-pane fade" id="contacts">
      <div class="col-md-6">
             <p>
                   @Html.Partial("_LedgerContactsPartial")
             </p>
      </div>
      <div class="col-md-6">
             <p>
                   @Html.Partial("_LedgerContactsPartial")
             </p>
      </div>
</div>

在保存数据时,如何将两个联系人详细信息传递给控制器​​。

感谢Adv。

1 个答案:

答案 0 :(得分:1)

您需要将联系人详细信息列表传递给控制器​​。要实现这一点,您可以遵循默认ModelBinder期望绑定到列表的输入字段的命名约定。

This article by Phill Hack shows Model Binding To A List

请看一下这个问题 How to pass IEnumerable list to controller in MVC including checkbox state