我基本上是爲一個時間表頁(ASP.NET MVC)創建一個平面視圖模型,該模型有一個星期幾的網格。 WorkTime屬性應該是來自數據庫的現有WorkTime,如果沒有現有WorkTime屬性,則爲null。C#重構這個亂碼!
只會顯示1周(週六到週五)。我在那裏有單獨的屬性,以便我的視圖中的語法應該更簡單。
+------+-----+-----+-----+-----+-----+-----+-----+
| Desc | Sat | Sun | Mon | Tue | Wed | Thu | Fri |
+------+-----+-----+-----+-----+-----+-----+-----+
|______|_____|_____|_____|_____|_____|_____|_____|
|______|_____|_____|_____|_____|_____|_____|_____|
|______|_____|_____|_____|_____|_____|_____|_____|
|______|_____|_____|_____|_____|_____|_____|_____|
所有這一切都來自並保存到數據庫中的日期沒有時間元素(所有午夜小時),週六至週五的DateTime屬性都設置了。
我設置
public WorkTime SaturdayWorkTime { get; private set; }
public WorkTime SundayWorkTime { get; private set; }
public WorkTime MondayWorkTime { get; private set; }
public WorkTime TuesdayWorkTime { get; private set; }
public WorkTime WednesdayWorkTime { get; private set; }
public WorkTime ThursdayWorkTime { get; private set; }
public WorkTime FridayWorkTime { get; private set; }
當前迭代的屬性...
public DateTime Saturday { get; private set; }
public DateTime Sunday { get; private set; }
public DateTime Monday { get; private set; }
public DateTime Tuesday { get; private set; }
public DateTime Wednesday { get; private set; }
public DateTime Thursday { get; private set; }
public DateTime Friday { get; private set; }
_workTimes = _workTimeRepository.GetByWorkAssignmentID(WorkAssignment.ID, Saturday, Friday);
SaturdayWorkTime = GetWorkTimeForDay(DayOfWeek.Saturday);
SundayWorkTime = GetWorkTimeForDay(DayOfWeek.Sunday);
MondayWorkTime = GetWorkTimeForDay(DayOfWeek.Monday);
TuesdayWorkTime = GetWorkTimeForDay(DayOfWeek.Tuesday);
WednesdayWorkTime = GetWorkTimeForDay(DayOfWeek.Wednesday);
ThursdayWorkTime = GetWorkTimeForDay(DayOfWeek.Thursday);
FridayWorkTime = GetWorkTimeForDay(DayOfWeek.Friday);
這個helper方法...
private WorkTime GetWorkTimeForDay(DayOfWeek dow)
{
return _workTimes.FirstOrDefault(x => x.Date.DayOfWeek == dow);
}
我想'週六'和'週五'是你檢索的項目的上限和下限。爲什麼他們的財產雖然,以及其他所有的日子用於什麼? 0.o – Thorarin 2009-08-05 22:22:04
另外,對於爲什麼某個擁有SO記錄和聲譽的人需要其他人才能使這一點比現在更好,我有些困惑。沒有任何意圖,我只是感到驚訝。 – Thorarin 2009-08-05 22:27:40
哈哈......我想我在滿足於我需要的目的的地方。星期六至星期五設置,因爲我需要在我的視圖中引用它們,當我回發到服務器。 – 2009-08-05 22:33:03