第()
返回序列的第一个元素。
当结果中没有元素或源为空时抛出错误。
如果需要多个元素,而你只需要第一个元素,你应该使用它。
FirstOrDefault ()
返回序列的第一个元素,如果没有找到元素,则返回默认值。
仅当源为空时才抛出错误。
如果需要多个元素,而你只需要第一个元素,你应该使用它。
如果结果为空也很好。
我们有一个UserInfos表,其中有如下所示的一些记录。根据下面的表格,我创建了一个例子…
如何使用First()
var result = dc.UserInfos.First(x => x.ID == 1);
只有一条记录ID== 1。应该返回这个记录
ID: 1姓:Manish姓:Dubey邮箱:xyz@xyz.com
var result = dc.UserInfos.First(x => x.FName == "Rahul");
有多个FName == "Rahul"的记录。第一个记录应该返回。
ID: 7名:Rahul姓:Sharma邮箱:xyz1@xyz.com
var result = dc.UserInfos.First(x => x.ID ==13);
没有ID== 13的记录。应该会发生错误。
InvalidOperationException:序列不包含元素
如何使用FirstOrDefault()
var result = dc.UserInfos.FirstOrDefault(x => x.ID == 1);
只有一条记录ID== 1。应该返回这个记录
ID: 1姓:Manish姓:Dubey邮箱:xyz@xyz.com
var result = dc.UserInfos.FirstOrDefault(x => x.FName == "Rahul");
有多个FName == "Rahul"的记录。第一个记录应该返回。
ID: 7名:Rahul姓:Sharma邮箱:xyz1@xyz.com
var result = dc.UserInfos.FirstOrDefault(x => x.ID ==13);
没有ID== 13的记录。返回值为空
希望它能帮助你理解何时使用First()或FirstOrDefault()。