На мой взгляд, есть средство выбора даты для фильтров по выбранному месяцу и одна таблица. В таблице 32 столбца, где столбец 1-32 - это дата. Я хочу спросить, как скрыть столбец 29,30,31, когда я выбираю февраль (потому что в феврале только даты до 28)? А также, если я выберу апрель, столбец 31 исчезнет.
ниже мой код, спасибо.
private AttendecencesViewModel LoadDataAttendence(AttendecencesViewModel model)
{
queryJoin = db.AttendenceVs.ToList();
if (model.SearchPayrollMonth != null)
{
queryJoin = queryJoin.ToList().Where(x => x.PayrollMonth == model.SearchPayrollMonth);
}
foreach (AttendenceV attendenceV in queryJoin)
{
AttendenceViewModel detail = new AttendenceViewModel();
detail.EmployeeName = attendenceV.EmployeeName;
detail.PresenceDay01 = attendenceV.PresenceDay01;
detail.PresenceDay02 = attendenceV.PresenceDay02;
detail.PresenceDay03 = attendenceV.PresenceDay03;
attedenceViewModel.AttendenceDetails.Add(detail);
}
return attedenceViewModel;
}
public ActionResult Search(AttendecencesViewModel model)
{
attedenceViewModel = LoadDataAttendence(model);
return View("Index", attedenceViewModel);
}
View
@Html.TextBoxFor(model => model.SearchMonth, new { @class = "form-control" })
<table class="table">
<tr>
<th>Name</th>
<th>1</th>
<th>2</th>
<th>3</th> //I only made it until the 3rd,
.
.
<th>31</th>
</tr>
@foreach (MyExercise.Data.ViewModel.AttendenceViewModel item in Model.AttendenceDetails)
{
<tr>
<td>@Html.DisplayFor(modelItem => item.EmployeeName)</td>
<td>@Html.DisplayFor(modelItem => item.PresenceDay01)</td>
<td>@Html.DisplayFor(modelItem => item.PresenceDay02)</td>
<td>@Html.DisplayFor(modelItem => item.PresenceDay03)</td>
.
.
<td>@Html.DisplayFor(modelItem => item.PresenceDay31)</td>
</tr>
}
</table>