从结果返回的数组中获取单个记录

时间:2014-03-26 20:26:09

标签: c# linq lambda

我有以下声明从实体框架获取记录。

 cars car = db.auto.Find(type);

此语句返回多个记录,我需要选择任何人,因为它们都是相同的。我试过这个

  car car=db.auto.Find(type).Take(1);

但它不起作用。请让我知道如何从结果中选择单个记录。 谢谢 塔里克

4 个答案:

答案 0 :(得分:0)

使用First方法:

  car car=db.auto.Find(type).First();

答案 1 :(得分:0)

这应该有效:

car car=db.auto.Find(type)[0]

答案 2 :(得分:0)

您可以使用First返回查询中返回的第一项:

car car=db.auto.Find(type).First();

Single,它会返回第一个项目,但如果有多个项目也会出错:

car car=db.auto.Find(type).Single();

请注意,如果没有返回任何项目,这两个选项都将引发错误。如果有可能,您可能需要使用FirstOrDefaultSingleOrDefault。如果结果集为空,这些方法将返回null

答案 3 :(得分:0)

使用FirstOrDefault。如果没有找到,那将返回集合中的第一个项目或null

 car car=db.auto.Find(type).FirstOrDefault();