2012-03-02 10 views

答えて

1

ジャンクションテーブルにそれらのデータを取り戻す方法を知りたいですプロパティとして:あなたが特定または少数の映画に結果を制限したい場合は

var junctionTableDataList = (from m in context.Movies 
          from t in m.Tags 
          select new 
          { 
           MovieId = m.MovieId, 
           TagId = t.TagId 
          }).ToList(); 

あなたはselectwhere句を追加することができます。

編集

は、拡張メソッドとラムダ式と同じでは次のようになります。あなたはあなたができる方法からのデータを返したい場合は

var junctionTableDataList = context.Movies 
    .SelectMany(m => m.Tags.Select(t => new 
    { 
     MovieId = m.MovieId, 
     TagId = t.TagId 
    })) 
    .ToList(); 

編集2

litteヘルパータイプを作成し、匿名オブジェクトの代わりにこれらの「名前付き」オブジェクトのリストを返します。

public class JunctionData 
{ 
    public int MovieId { get; set; } 
    public int TagId { get; set; } 
} 

List<JunctionData> junctionTableDataList 
    = (from m in context.Movies 
     from t in m.Tags 
     select new JunctionData 
     { 
      MovieId = m.MovieId, 
      TagId = t.TagId 
     }).ToList(); 

または...Select(t => new JunctionData...拡張メソッド構文の場合。

+0

お返事ありがとうございました – JED

+0

私はラムダ式でこれを行いたい場合は – JED

+0

@JED:上記の編集を参照してください。 – Slauma

関連する問題