У меня есть модель Лицо (среди других полей в день рождения) , и я хочу передать список всех лиц вместе с рассчитанным возрастом каждого человека, чтобы видASP MVC4 - Пропустить Список для просмотра через просмотр модели
Therefor:
модель вид
public class vm_PersonList { public Person Person { get; set; } public int age { get; set; } }
действие контроллера:
public ActionResult PersonList() { ViewBag.Message = "My List"; var list = new List<vm_PersonList>(); var list_p = new vm_PersonList(); foreach (var p in db.Person) { list_p.Person = p; //the age will be calculated based on p.birthDay, not relevant for the //current question list_p.age = 23; list.Add(list_p); } return View(list); }
Вид
@model List<programname.Viewmodels.vm_PersonList> @foreach (var p in Model) { <tr> <td> @p.Person.FullName </td> <td> @p.age </td> </tr> }
Таблица Person содержит, например, 6 записей. При отладке приложения я вижу:
В конце действия контроллера «список» содержит правильно 6 различных Person записей
В мнению, «модель» содержит 6 записей, но в 6 раз последние msgstr "запись в базу данных". Есть ли у кого-нибудь предложение решить эту проблему?
move var list_p = new vm_PersonList(); в петлю foreach. – Chris