2011-10-11 86 views
1

我如何转换这个LINQ如何将此linq表达式转换为方法形式?

from f in fake 
join r in real 
on f.Year equals r.Year 
into joinResult 
from r in joinResult.DefaultIfEmpty() 
select (r == null ? f : r); 

Linq中的方法与形式。

fake.Join(real, ...) 

有没有一种工具可以帮助我做到这一点?

回答

1

这是ReSharper的将它改成:

fake.GroupJoin(real, f => f.Year, r => r.Year, (f, joinResult) => new {f, joinResult}) 
    .SelectMany(@t => @t.joinResult.DefaultIfEmpty(), (@t, r) => (r == null ? @t.f : r)); 
相关问题