Правильный способ загрузки частичного вида в вид - PullRequest
0 голосов
/ 19 августа 2011

Я хочу создать представление, позволяющее мне добавлять телефонные номера для человека.

public class PersonModel
{
    public string Name { get; set; }
}

public class PhoneModel
{
    public string PhoneNumber { get; set; }
}

public class PersonDetailViewModel
{
    public PersonModel PersonDetails { get; set; }
    public IList<PhoneModel> PhoneNumbers { get; set; }
}

Я привязываю свой основной вид к модели представления, например

@model DynamicPhoneNumber.Models.PersonDetailViewModel
@{
ViewBag.Title = "Add";
}
<script src="@Url.Content("~/Scripts/jquery.validate.min.js")" type="text/javascript"></script>
@using (Html.BeginForm())
{
 @Html.ValidationSummary(true)
<fieldset>
    <legend>Details</legend>Name @Html.TextBoxFor(a => a.PersonDetails.Name)
    <input type="button" id="btnAdd" value="Press Me" />
    <div id="mydiv">
    </div>
    <p>
        <input type="submit" value="Create" />
    </p>
</fieldset>
}

Мое частичное представление выглядит так:

@model DynamicPhoneNumber.Models.PhoneModel
<p>
@Html.TextBoxFor(t => t.PhoneNumber)
</p>

Я использую jquery для динамического добавления частичного представления.

В HttpPost я устанавливаю точку останова и могу видеть значение из PersonDetails.Name, однакони одно из значений из моего загруженного частичного представления не привязано к PhoneModel.

Что мне нужно сделать, чтобы иметь возможность вернуть данные из частичных представлений в мою модель представления?

1 Ответ

0 голосов
/ 19 августа 2011

вот хороший пост в блоге, который может помочь решить вашу проблему

http://haacked.com/archive/2008/10/23/model-binding-to-a-list.aspx

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...