У меня проблема при попытке опубликовать IEnumerable от вида бритвы до метода действия Controllor. Также результат тот же, если я использую список.
Я публикую свой метод контрольного действия также в комментарии. В моем методе контрольного действия я получил пустой список.
Это мой взгляд:
@model IEnumerable<Subject>
<form asp-action="AddNewSubjects" asp-controller="Teacher" method="post" role="form" class="form-horizontal">
<table class="table">
<thead>
<tr>
<th>ID</th>
<th>Name</th>
<th>Number of class</th>
<th>Level</th>
</tr>
</thead>
<tbody>
@if (Model != null)
{
var item = Model.ToList();
@for(int i=0;i<Model.Count();i++)
{
<tr>
<td>@item[i].ID</td>
<td>@item[i].Name</td>
<td>@item[i].ClassNumber</td>
<td>@item[i].Level</td>
</tr>
}
}
</tbody>
</table>
<div class="form-group">
<div class="col-md-offset-2 col-md-5">
<input type="submit" class="btn btn-primary" value="Save all subjects" />
</div>
</div>
</form>
Это мой контроллер:
private readonly ISubjectService _subjectService;
public TeacherController(ISubjectService subjectService)
{
_subjectService= subjectService;
}
[HttpPost]
public IActionResult AddNewSubjects(IEnumerable<Subject> subjects)
{
var newSubjects= (from p in subjects
where p.State== Status.New
select p);
var result = _subjectService.SaveTeacherSubjects(newSubjects);
return View("ProfesorPages");
}