DateTime filterDate = endDate.HasValue ? endDate.Value : DateTime.Now.AddDays(7);
非三元
DateTime filterDate;
if (endDate.HasValue)
filterDate = endDate.Value;
else
filterDate = DateTime.Now.AddDays(7);
設置如果調試這兩個語句filterDate的值不會是相同的。爲什麼是這樣?
在第一個示例中,filterDate的值爲01/01/0001。 在第二個例子中,我得到了預期的結果,即filterDate是將來7天的日期時間。
編輯: 在這一點上,我甚至嘗試設置endDate = null只是爲了確保這裏是屏幕截圖。 alt text http://www.freeimagehosting.net/uploads/57bef2e50a.png
我見過的最奇怪的事情。
你有沒有試圖把周圍的三元括號? – 2010-01-28 15:14:17
您是否爲您的結束日期使用了可爲空的DateTime? (即DateTime?endDate) – Shimrod 2010-01-28 15:15:45
什麼是endDate? – serialhobbyist 2010-01-28 15:15:57