在Asp.net MVC中使用不同模型的部分视图

时间:2017-03-24 13:27:01

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

我有两个课程如下

Model:-  

     public class RegisterViewModel
        {
             public string Email { get; set; }     
             public AddressPropertyVM AddressProperty { get; set; }
        }

        public class AddressPropertyVM
        {
             public string StreetNo { get; set; }     
        }
Main Form
@model Application.Models.RegisterViewModel
{
    @Html.TextBoxFor(m => m.Email)
    @Html.TextBoxFor(m => m.FirstName)

    @Html.Partial("_AddressPropertyPartial",Model.AddressProperty)

    <button type="submit">Register</button>

}

Partial View Form
@model Application.Models.AddressPropertyVM
{
    @Html.TextBoxFor(m => m.StreetNo)

}

我正在创建asp.net mvc应用程序。

我为AddressPropertyVM创建了一个局部视图。

但我们发布表格(主表格),那时AddressProperty的数据为空。

1 个答案:

答案 0 :(得分:2)

根据我的理解,您想使用一个包含多个页面的局部视图,我的意思是在多个页面中多次使用一个页面。

阅读此article并了解其工作原理。

根据以下文章更改您的代码。

@Html.Partial("_AddressPropertyPartial",Model.AddressProperty)

@Html.Partial("_AddressPropertyPartial", Model.AddressProperty,  new ViewDataDictionary()   {     TemplateInfo = new TemplateInfo()       { HtmlFieldPrefix = "AddressProperty" } }