Я сейчас работаю над школьным проектом, и мы строим систему бронирования, которая отображает доступное время только на сегодняшний день. (Мы не используем календарь). Мой вопрос: как я могу отображать только доступные часы на сегодня, а не отображать прошедшие часы? Прямо сейчас код отображается все время с 8.00 до 16.00, даже если реальное время 12.00. Если часы равны 12, я хотел бы отображать только часы после 12. Я надеюсь, что вы можете мне помочь, потому что я не нашел решения, которое подходит мне.
Вот так выглядит код в представлении:
@{
int open = 8;
decimal inHours = Convert.ToDecimal(Model.service.Duration) / Convert.ToDecimal(60);
int iterations = (int)Math.Floor(Convert.ToDecimal(open) / Convert.ToDecimal(inHours));
DateTime startTime = DateTime.Today;
startTime = startTime.AddHours(8);
List<DateTime> dt = new List<DateTime>();
for (int i = 0; i < iterations; i++)
{
DateTime endTime = startTime;
endTime = endTime.AddMinutes(Model.service.Duration);
if (!Model.service.Bookings.Any(x => x.StartTime == startTime))
{
@Html.ActionLink(startTime.ToString("HH:mm") + "-" + endTime.ToString("HH:mm"),
"BookService", "Booking", new
{
inBookingSystemId = Model.bookingSystem.BookingSystemId,
inServiceId = Model.service.ServiceId,
inStartTime = startTime.ToString()
}, new { @class = "btn btn-primary" })
}
startTime = endTime;
}
}