如何从Fruit ID中选择Fruit对象(唯一)

时间:2010-09-28 01:32:12

标签: c# linq select

这是从ID中选择我需要的Fruit对象的最佳方法吗?

所以我拿着ID并返回它的名字,id是唯一的,所以只会有一个结果。

如果我不使用.Single()我得到IQueryable但我只想要单个对象

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

2 个答案:

答案 0 :(得分:3)

.Single()很好 - 但如果它没有任何结果,它将抛出异常。如果您希望它返回null而不是SingleOrDefault()。这将为您提供唯一返回的对象,如果没有找到,则返回null。

如果结果集将返回多于1个项目(不太可能带有ID),并且您只想要第一个项目,请使用First()FirstOrDefault()

答案 1 :(得分:3)

试试这个

fruitDb.Fruits.SingleOrDefault(f => f.FruitId == id);