一个关于linq效率的小问题
现在想获得一个list中符合某条件的一个元素,如果超过一个则返回默认的第一个,如果没有则返回null
现在实现方式有两种
一:
var result = from t in tProjectORGs where t.CLASSID == tProjectGeneral.ID select t;
if (result.Count() > 0)
{
return result.ToList()[0];
}
else
{
return null;
}
二:
IList<AGSDM_PROJECT> tProjectInORGs = tProjectORGs.Where(t => t.CLASSID == tProjectGeneral.ID).ToList();
if (tProjectInORGs.Count > 0)
{
return tProjectInORGs[0];
}
else
{
return null;
}
请问哪种效果更优??