2009-05-31 69 views

回答

0

如果我理解正確的話,這應該這樣做。 由於有兩個日期可供選擇,我選擇了blist中的一個。

假設ALIST爲IEnumerable <一個>和blist爲IEnumerable <乙>

編輯:以前的答案加入了錯誤的方式,允許的加入部分空。我已經更新了代碼,允許空一個!而非

blist 
    .GroupJoin 
    (
     alist, 
     tb => tb.UserID, 
     ta => ta.UserID, 
     (tb, ta) => new {tb, ta} 
    ) 
    .SelectMany 
    (
     j => j.ta.DefaultIfEmpty(), 
     (j, x) => 
     new Merge 
      { 
       AValue = x.AValue, 
       BValue = j.tb.BValue, 
       Date = j.tb.Date, 
       UserID = j.tb.UserID 
      } 
    ); 
+0

blist是永遠不變的。 – zsharp 2009-06-01 01:25:08

相關問題