2012-10-19 90 views
2

我有兩個表中的記錄,和1個對象, 我想要從兩個表中的數據爲1個GridView的,(兩個表具有相同的字段),我不能加入,因爲我需要顯示所有行如何將兩個數據源合併爲一個?

這裏是我的代碼:

var query = from all in DB.Movies 
      where all.IsActive 
      select new MoviesObject 
      { 
       PhotoId = all.PhotoId, 
       Title = all.Title, 
       Description = all.ShortDescription 
      }; 
var querytwo = from all in DB.movieslisttwo 
       where all.IsActive 
       select new MoviesObject 
       { 
        PhotoId = all.PhotoId, 
        Title = all.Title, 
        Description = all.ShortDescription 
       ; 
return query.ToList(); 

回答

6
return query.Concat(query2).ToList(); 

或者,你可以調用.Union()跳過重複。

+1

注意,如果MoviesObject沒有實現Equals來比較PhotoId,因爲Union可能不會如你所期望的那樣工作,因爲每個列表將包含任何重複的不同實例 –

+0

@TrevorPilley:No;我假設他沒有使用LINQ to Objects。 – SLaks

+0

謝謝你工作好:) –

相關問題