2011-12-06 4 views
2

私は以下のコードを持っています。 1行だけが返されるため、最後のforeachは不要です。Linq to Entitiesを使用してこのコレクションから最初の値を取得するにはどうすればよいですか?

だから、ループすることなくuserGroupsから値を取得するにはどうすればよいですか?

おかげ ケビン

using (kdEntities db = new kdEntities()) 
     { 
      Label lbl = sender as Label; 
      IQueryable<UserGroup> userGroups = from UserGroup in db.UserGroups where UserGroup.UgpID == 1 select UserGroup; 

      foreach (var group in userGroups) 
      { 
       lbl.Text = group.UgpDescription; 
      } 
     } 

答えて

8
userGroups.FirstOrDefault(); 

あなたは2つのオプションがありますトリック

+0

Easy、peasy lemon squeezy +1 –

2

を実行する必要があります。

使用userGroups.FirstOrDefault();が複数の値も、あなたはまずのみに関心があることができれば、 one

使用userGroups.SingleOrDefault();には値が1つだけある必要があります。複数の値がある場合、例外がスローされます。

OrDefaultの部分もオプションです。値がない場合は、デフォルト値(場合によってはnull)が返されます。 OrDefaultを省略してコレクションが空の場合、例外がスローされます。

関連する問題