看来我迷失了对LINQ的了解,只是设法看到了它的用处。我不确定是否要问太多,或者我做的事情不正确。我有以下笨拙的代码,
class CStation{
public String Make;
public List<ulong> TunedStations;
}
List<List<ulong>> mStations=(from t in Radios where t.Make==aMake select t.TunedStations).ToList();
if(mStations.Count!=0)
return mStations[0];
return null;
可以,但是我可以用LINQ怎么做吗?
最佳答案
您可以使用:
var myDefault = ......;
return (from t in Radios
where t.Make==aMake
select t.TunedStations)
.FirstOrDefault() ?? myDefault ;
或作为lambda
var myDefault = ......;
return Radios.Where(t => t.Make == aMake)
.FirstOrDefault() ?? myDefault ;
这些将返回集合中的第一项或您的默认项(或者如果您想返回null,则省略
?? myDefault
)关于c# - 如果什么也没找到,如何为LINQ返回特定值?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11007234/