Я смотрел на SO и google уже более недели и до сих пор не смог найти рабочий ответ. Надеюсь, кто-то может мне помочь.Просмотр не передачи данных контроллеру
Im работает над проектом с asp.net (Entity Framework + Razor), и я пытаюсь добавить две модели к представлениям. Он отлично показывает, используя editorFor(). Теперь проблема заключается в том, что некоторая часть не передает информацию контроллеру.
В этом случае каждое упражнение получило некоторые ответы. Это мое упражнение модель:
Table("Exercise")]
public class ExerciseModel
{
[Key]
public int ExerciseId { get; set; }
[Required]
public string Question { get; set; }
[Required]
public List<AnswerModel> Answers { get; set; }
И этот answermodel:
[Table("Answer")]
public class AnswerModel
{
[Key]
public int AnswerId { get; set; }
[Required]
public string Answer { get; set; }
}
мнение существует из двух частей, физическая часть (рабочих один) и ответ часть. Я хочу добавить больше ответов в список в упражнении. Я пробовал разные способы. Шаблоны редакторов, частичные виды и т. Д.
Это вид: Вы можете создать новый вопрос и добавить ответы в дороге, используя JQuery. То, что я хочу создать, - это то, что я могу публиковать ответы в этом списке в exerciseisemodel.
@using (Html.BeginForm("CreateQuestion", "Admin", FormMethod.Post))
{
@Html.ValidationSummary(true)
//will be changed
@Html.Partial("_PartialCreateExercise")
//this shows the answers form
<div style="display: none;" id="new">
<div class="editor-field">
@Html.EditorFor(m => m.Answers);
</div>
</div>
<p>
<input name="command" type="button" id="add" value="add new answers" />
</p>
<p>
<input name="command" type="submit" value="Create" />
</p>
}
Это работает, но когда я отправить страницу на список в exercisemodel (типа AnswerModel) остается пустым. И, наконец, шаблон редактора ответов:
@model Academy.Models.AnswerModel
@{
Layout = null;
}
<h2>Answer</h2>
<p>
@Html.LabelFor(model => model.Answer)
@Html.EditorFor(model => model.Answer)
</p>
The jQuery:
$(document).ready(function() {
$("#add").click(function() {
$('#add').after($("#new").html());
$('#new').css("Display", "block");
});
});
Это не делает много и пытался много там, так что он становится грязным. Но при использовании режима отладки List in ExerciseModel пуст, а также AnswerModel.
Итак, проблема заключается в том, что при отправке формы список в упражненииModel остается пустым. Я не могу добираться до List в упражнении по какой-то причине с помощью шаблона редактора. (контроллер не включен, потому что он не делает много сейчас, и Список всегда пуст)
Это удерживало меня в напряжении в течение недели, надеюсь, кто-то может мне помочь?
Можете ли вы разместить свой контроллер (ы)? –
Я добавил контроллер-метод, который должен выполнять обработку. Это немного грязно, извините. Пробовал много. Но при использовании отладчика List в ExerciseModel пуст, как и сам AnswerModel. Как я уже сказал, на прошлой неделе я попробовал LOT. –