2012-09-20 34 views
0

我有一個wpf應用程序。當我跑它關閉。我調試它,我發現這個LINQ查詢關閉它(我不知道爲什麼!)linq查詢關閉我的wpf應用程序

TodayCards = cards.Where(i => (i.NextTime.Day == DateTime.Now.Day && i.NextTime.Month == DateTime.Now.Month && i.NextTime.Year == DateTime.Now.Year)).Select(i => i).ToList(); 

我也試過

TodayCards = cards.Where(i => (i.NextTime.Day == DateTime.Now.Day && i.NextTime.Month == DateTime.Now.Month && i.NextTime.Year == DateTime.Now.Year)).ToList(); 

但關閉它這兩種情況。

+0

是否有例外?如果是這樣,你可以發佈它嗎? – SynerCoder

+0

@SynerCoder沒有例外。只需關閉程序。這很難找到問題,但我發現後運行此行程序關閉 –

+0

這將更清晰:'cards.Where(c => c.NextTime.Date == DateTime.Today).ToList()' –

回答

2

最可能NextTimenull在至少一張卡上或cards本身是null

+0

沒有'卡'是空的,我要去調試它! –

1

我找到了原因! cards爲空,它關閉我的應用程序。我把這段代碼我的LINQ查詢之前:

 foreach (var item in cards) 
     { 
      if (item.NextTime == null) 
      { 
       int a = 0; 
      } 
     } 

以查找是否存在空下一次出現,但它運行前關閉,我發現這個問題是card。我不能說爲什麼它沒有任何例外關閉應用程序,但問題解決了!

相關問題