2011-01-11 35 views
0

現在我這樣做,但我不很喜歡:從Entity-Framework捕獲空值的好方法?

decimal maxId = 0d; 
try 
{ 
    maxId = ent.SaveStates.Max(c => c.Id); 
} 
catch (Exception ex) //no entries in the db 
{ 
    maxId = 1; 
} 

有沒有更好的方式來處理與實體框架從DB空?

+0

儘管這不是一個答案,但我只是想指出,建議避免捕捉「Exception」。當你知道具體的異常類型是什麼時,使用特定的類型。 – 2011-01-11 18:36:34

回答

1

這裏是這樣的:

maxId = ent.SaveStates.Count() > 0 ? ent.SaveStates.Max(c => c.Id) : null; 

我不認爲這會導致兩個查詢,但我個人資料一定要確保。

+0

我並不是真的擔心2 DB,但是一個簡介怎麼樣? – 0x4f3759df 2011-01-12 21:35:34