0
기본 바인더를 사용하여 중첩 목록에 바인딩하는 데 문제가 있습니다. 나는 SQL과이 데이터 구조 다음MVC 기본 모델 복잡한 목록에 바인딩
경쟁을 < CompetitionQuestions을 < CompetitionQuestionChoices
하는 LINQ를 사용하고내가
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Save([Bind(Prefix="Competition")]Competition competition)
{
}
을 시도 내 컨트롤러에서
<%= Html.Hidden("Competition.Id",Model.Competition.Id) %>
<%=Html.TextBox("Competition.CompetitionName", Model.Competition.CompetitionName)%>
<%= Html.TextBox("Competion.CompetitionQuestions[0].Id", Model.CompetitionQuestion.Id)%>
<%= Html.TextBox("Competion.CompetitionQuestions[0].Question", Model.CompetitionQuestion.Question)%>
<%= Html.TextBox("Competion.CompetitionQuestions[0].CompetitionQuestionChoices[0].Id", Model.CompetitionQuestionChoices.Id)%>
<%= Html.TextBox("Competion.CompetitionQuestions[0].CompetitionQuestionChoices[0].Choice", Model.CompetitionQuestionChoices.Choice)%>
를 다음과 같이 내 HTML입니다 어떤 경쟁자도 있지만 자식 요소는 없다.
Lists int에 HTML이라는 접두어가 붙지 않고 각 컬렉션에 개별적으로 바인딩하는 것보다 더 성공적이었습니다.
UpdateModel(competition,"Competition");
UpdateModel(competition.CompetitionQuestions,"competitionQuestions");
그러나 나는이 접두사를 가지고 있어야 내가 어떤 도움을 기꺼이 수신
를 선언하는 방법을 잘 모르겠어요으로이 competitionQuestionChoices 위해 일할 수 캔트.