첫 번째 MVC 앱을 만들 때 페이지 중 하나에서 데이터베이스의 테이블에 대한 일련의 질문을 나열해야합니다. 내가 설정 한 모델 :MVC 3 Webapp - 모델 바인더
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>
} 그래서 여기
나는 목록을가는 페이지에 그들을 가하고 있지만에 제출 한 목록이 null입니다 : 이것은 내가 그것을 해결하려고 노력했다 줄이려고 버전입니다. 아무도 내가 잘못 가고 있는지 알 수 있습니까?
요약하면 내가하고있는 일은 질문 목록을 페이지, 사용자가 작성하고 답변을 제출하지만 모든 목록에 대한 답변을받지 못하는 것입니다.
안녕하십니까. 빠른 응답을 보내 주셔서 감사합니다. http://ivanz.com/2011/06/16/editing-variable-length-reorderable-collections-in-asp-net-mvc- part-1/당신이 추천하고 내가 필요로하는 것처럼 보입니다. 계속 게시하게 ... – MartGriff