如何将带有子集合的模型传递给局部视图?

时间:2014-09-04 06:38:13

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

我正在开发一个MVC应用程序。 我想将模型的子集合从一个视图传递到另一个视图。

请查看以下查看模型。

我有以下视图模型。

 public class AdviceCreateVM
        {      
            [Key]
            public int Id { get; set; }
            public string AdviceNo { get; set; }
            public  ICollection<InvoiceVM> Invoices { get; set; }
         }


   public class InvoiceVM
    {
        [Key]
        public int Id { get; set; }
        public string InvoiceNumber { get; set; }
        public double TotalAmount { get; set; }
    }

现在,请考虑以下AdviceCreateVM(父视图)视图

    @model epay.ViewModel.AdviceCreateVM

    <h2 style="font-size:22px;margin-left:10px;"> New Payment Advice</h2>

     @using (Html.BeginForm("Create", "AdviceCreate", FormMethod.Post, new { enctype = "multipart/form-data", id = "frmCreate", onsubmit = "disableSubmitButton()" }))
     {
         @Html.TextBoxFor(model=>model.AdviceNo ,new{@placeholder="Type No if any"})
         @Html.ValidationMessageFor(model=>model.AdviceNo )

   @{
      -->   Model.Invoices.Add(new epay.ViewModel.InvoiceVM());
   }
        @Html.Partial("AdviceInvoiceView", Model.Invoices[0],new ViewDataDictionary {{ "Count", a }})                    

    }

在上面的视图中(显示AS箭头),我想用epay.ViewModel.InvoiceVM()传递模型,这是带有单个对象的子集合到局部视图AdviceInvoiceView

如何在局部视图中使用带有子集合的模型?

部分视图代码以

开头
@model epay.ViewModel.InvoiceVM

这是对的吗?

0 个答案:

没有答案