2

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でこれをどのように行うことができますか?

4

2 に答える 2

6

使用するだけ

return (from t in Radios where t.Make==aMake select t.TunedStations).FirstOrDefault(); 
于 2012-06-13T01:58:40.060 に答える
2

これを使用できます:

var myDefault = ......;

return (from t in Radios 
        where t.Make==aMake 
        select t.TunedStations)
       .FirstOrDefault() ?? myDefault ; 

またはラムダとして

    var myDefault = ......;
    
    return Radios.Where(t => t.Make == aMake)
           .FirstOrDefault() ?? myDefault ; 

?? myDefaultこれらは、コレクションまたはデフォルトの最初のアイテムを返します (または、 null を返したい場合は省略します)。

于 2012-06-13T02:03:22.387 に答える