2010-09-28 56 views
2

這是從ID中選擇我需要的水果對象的最佳方式嗎?如何從水果ID中選擇水果對象(唯一)

所以我帶着ID並返回它的名字,ID是唯一的,所以只會有一個結果。

如果我不使用。單()我得到的IQueryable但我只是想單個對象

var fruitName = (from p in fruitDB.Fruits 
           where p.FruitID == id 
           select p.FruitName).Single(); 
+0

我不能確定是什麼問題。按照預期,您的查詢應該選擇FruitName。如果你想'水果'本身只是'選擇p'而不是'選擇p.FruitName' – EMP 2010-09-28 01:34:37

回答

3

.Single()是好的 - 但如果它沒有任何結果時,會拋出異常。如果您希望它返回null而不是SingleOrDefault()。這會給你返回的唯一對象,或者如果沒有找到,則返回null。

如果結果集將返回多個項目(不可能帶有ID),並且您只需要第一個項目,請使用First()FirstOrDefault()

3

試試這個

fruitDb.Fruits.SingleOrDefault(f => f.FruitId == id); 
相關問題