2012-07-21 126 views
0

需要用一年的第一天,在年度的最後一天通過LINQ方法第一天和最後一年的

c.TERMINATION_DATE < FirstDayofYear (DateTime.Now) 
    && c.TERMINATION_DATE > LastDayOfYear(DateTime.Now) 

回答

2

幸運比較日期,今年的第一天和最後一天總是相同的:1月1日和12月31日:

// Only fetch the property *once*, for consistency 
DateTime today = DateTime.Today; 
DateTime start = new DateTime(today.Year, 1, 1); 
DateTime end = new DateTime(today.Year, 12, 31); 

... 
// In your LINQ query 
where c.TerminationDate < start || c.TerminationDate > end 
... 

請注意,我已經改變了條件||而不是&& - 畢竟值不能後年的第一天之前y的最後一天耳。如果當然,你有可能以錯誤的方式得到你的條件。

還要注意的是,如果你的TerminationDate財產實際上的日期/時間專賣店,而不僅僅是一個日期,你可以有問題 - 因爲開始/結束都將是對各自的日期開始午夜。

另一個要考慮的 - 和稍微簡單 - 是只是使用一年​​:很多

int year = DateTime.Today.Year; 

... 
// In your LINQ query 
where c.TerminationDate.Year != year 
... 
+0

偉大構想隊友:)謝謝。我在某些事情上仍然是初學者,而我在腦海中並沒有提出這個想法。:)非常感謝你解決方法。 – user1542323 2012-07-21 07:37:48

相關問題