2012-04-13 14 views
0

私は2つのテーブルArtistテーブル(PK:ArtistID)、ムービーテーブル(PK:MovieID)とジャンクションテーブルArtistMovieを持っています。
Linq2Entitiesを使用して、両方のテーブルのアーティストとムービーをDataGridに表示するにはどうすればよいですか?Linq to Entities Inner DataGridに参加

RentalEntities db = new RentalEntities();以下は

は私のクエリです:

SELECT Movie.MovieName, 
     Movie.Year, 
     Artist.ArtistName, 
     Artist.Age 
     FROM Artist INNER JOIN ArtistMovie ON Artist.ArtistID = ArtistMovie.ArtistID 
        INNER JOIN Movie ON ArtistMovie.MovieID = Movie.MovieID 

答えて

1
私は、これは動作するはずだと思うでしょう

:これは動作します

from a in db.Artist 
join am in db.ArtistMovie on a.ArtistID equals am.ArtistID 
join m in db.Movie on am.MovieID equals m.MovieID 
select new { 
    MovieName = m.MovieName, 
    Year = m.Year, 
    ArtistName = a.ArtistName, 
    Age = a.Age 
}; 
+0

、ちょうどノートは、しかし、あなたは内のフィールドの名前を必要としません匿名の型に投影するときに選択し、指定したフィールド名は、選択したフィールドの名前とまったく同じです – mattytommo

+0

@mattytommo、true!フィールド名がなくても機能しました – ArchieTiger