Я создаю свое первое приложение MVC, и на одной из страниц нужно перечислить ряд вопросов из таблицы в базе данных. Я настроил модель:
public class Audit
{
public DateTime InspectionDate { get; set; }
public string Engineer { get; set; }
public List<AuditGroup> AuditGroups { get; set; }
}
public class AuditGroup
{
public string GroupName { get; set; }
public List<AuditQuestion> AuditQuestions { get; set; }
}
public class AuditQuestion
{
public string Group { get; set; }
public string Question { get; set; }
public string Answer { get; set; }
public string Comments { get; set; }
}
Модели содержат списки, я создал страницу под названием «Создать» и заполнил модель группами и вопросами в группах, и они хорошо отображаются на странице. Когда я отвечаю на вопросы (заполняю текстовое поле) и нажимаю кнопку отправки, он вызывает контроллер:
[HttpPost]
public ActionResult Create(Audit newAudit)
{
try
{
// TODO: Add insert logic here
return RedirectToAction("Index");
}
catch
{
return View();
}
}
У newAudit есть данные в Инженере и Дате осмотра, но связыватель не собирает Списки на странице. Это урезанная версия, которую я пытаюсь решить:
@{
ViewBag.Title = "Audit";
Layout = "~/Views/Shared/_Layout.cshtml";
}
@model test.Models.Audit
<h2>
Audit</h2>
@using (Html.BeginForm())
{
<fieldset>
@foreach (var AuditGroups in Model.AuditGroups)
{
@Html.EditorFor(x=> AuditGroups.GroupName)
}
</fieldset>
<p>
<input type="submit" value="Create" />
</p>
}
Итак, я просматриваю список и помещаю их на страницу, но при отправке список является нулевым. Кто-нибудь знает, где я иду не так?
В общем, я делаю, отправляя список вопросов на страницу, чтобы пользователь заполнил и отправил ответы, но я не получаю ответы ни для одного из списков.