public string GetNameBySSN(string SSN)
{
var results = from c in Clients
where c.ClientSSN.Equals(IRRCNumber)
select c.FirstName;
//return results.ToString();
}
我希望使用Linq返回单个列值,并且不确定是否有办法快速轻松返回。我评论了一段代码,我知道它不返回值,如果枚举通过集合我可以得到值,但想知道是否有更好的方法。
我明白Linq是基于Set而且它没有预先知道的意思 结果由单个成员设置。
答案 0 :(得分:6)
return results.First().ToString();
其他可能的变体:
.First()返回第一个项目,如果没有项目,则抛出异常。它忽略了所有其他项目。
.FirstOrDefault()返回第一个项(如果存在),如果不存在,则返回结果类型的默认值。它忽略了所有其他项目。
.Single()会返回唯一的项目,如果该集合包含正好一个项目,否则会抛出异常。
.SingleOrDefault()与 .Single()类似,但会返回结果类型的默认值,而不是抛出异常。
答案 1 :(得分:6)
results.FirstOrDefault();
这种方式不会引发异常,仅供参考。 @Mehrdad会在哪里。