I need to do a LINQ2DataSet query that does a join on more than one field (as
var result = from x in entity join y in entity2 on x.field1 = y.field1
I think a more readable and flexible option is to use Where function:
var result = from x in entity1 from y in entity2 .Where(y => y.field1 == x.field1 && y.field2 == x.field2)
This also allows to easily change from inner join to left join by appending .DefaultIfEmpty().