兩個問題我的時間表代碼的一部分:
如何防止通過時間有循環,然後roombookings檢查它是否存在於給定的時隙中。有沒有一種方法只是說「現在這個列表中有匹配項,它的ID是什麼」
是否有反正我可以設置外部td到班級bgred,而不是一個跨度。 (請注意,有可能是一個時隙中的多個訂單,因此具有TD走出foreach循環。)
<tr>
<th></th>
@for (int i = 9; i <= 17; i++)
{
<th>@i:00</th>
}
</tr>
@foreach (var RoomNo in ViewBag.Rooms)
{
<tr>
<th>@RoomNo</th>
@for (int i = 9; i <= 17; i++)
{
<td>
@foreach (var roombooking in ViewBag.RoomBookings)
{
DateTime DateCheckStart = DateTime.Parse(ViewBag.Date.ToShortDateString() + " " + i.ToString() + ":00");
DateTime DateCheckEnd = DateTime.Parse(ViewBag.Date.ToShortDateString() + " " + i.ToString() + ":59");
if (DateCheckStart < roombooking.EndDateTime && DateCheckEnd > roombooking.StartDateTime && roombooking.RoomNo == RoomNo)
{
<span class="bgred"> @roombooking.RentalNo</span>
}
}
</td>
}
</tr>
}
OOO。 TH不刪除for,但它基本上做了類似的事情,我不必循環整個數據列表。因此顯着減少計算!它解決了td課程的問題! Genious我的朋友!感謝那。您的描述缺失。 :) – Doomsknight
你的代碼在MVC3環境中不起作用。使用這個概念我試圖創造相同的效果。 – Doomsknight
對不起,我沒有測試它,我只是大部分猜測。我會讓你修復我的語法錯誤:P –