У меня есть список студентов с оценками мест, которые можно отсортировать или отфильтровать. Я заметил (визуально), что при фильтрации оценки не перемещаются вместе с соответствующим учеником, а вместо этого имеют статус c.
Пример-
Перед фильтром:
Student A |11
Student AA |10
Student B |09
Student BB |08
После фильтрации по «B» ученикам:
Student B |11
Student BB |10
Я предполагаю, что это происходит из-за того, что они либо неверны, либо отсутствуют логи c, что говорит коду, что количество учеников было изменено. Но Я не уверен, что мне нужно добавить в код, чтобы решить эту проблему, и я надеюсь, что кто-то здесь сможет указать мне правильное направление.
Код бритвы:
@for (int i = 0; i < Model.Students.Count; i++)
{
<tr>
<td>@Model.Students[i].LastName</td>
<td>@Model.Students[i].FirstName</td>
<td>
@* Ept score form group*@
<div class="form-group">
<input type="hidden" asp-for="@Model.Students[i].Sid" />
<label asp-for="@Model.Students[i].Score.EptScore">Score</label>
<input type="number" data-internalid="@i" asp-for="@Model.Students[i].Score.EptScore" class="form-control limited-width" aria-describedby="helpBlock1" />
<span id="helpBlock1" asp-validation-for="@Model.Students[i].Score.EptScore" class="help-block"></span>
</div>
</td>
</tr>
Logi c Код:
IQueryable<Student> StudentsIQ = (from s in _context.Students
where s.StuType == StudentType.New
&& s.YearQuarterEnrolled == quar.Id
orderby s.LastName, s.FirstName //default ordering
select s).Include(st => st.Score);
// Based on input search filters, filter student data
if (!String.IsNullOrEmpty(LnameSearch))
{
StudentsIQ = StudentsIQ.Where(s => s.LastName.ToLower().StartsWith(LnameSearch.ToLower()));
queryParams.Add("LnameSearch", LnameSearch);
}
if (!String.IsNullOrEmpty(SidSearch))
{
StudentsIQ = StudentsIQ.Where(s => s.Sid.StartsWith(SidSearch));
queryParams.Add("SidSearch", SidSearch);
}
if (!String.IsNullOrEmpty(FnameSearch))
{
StudentsIQ = StudentsIQ.Where(s => s.FirstName.ToLower().StartsWith(FnameSearch.ToLower()));
queryParams.Add("FnameSearch", FnameSearch);
}
...