Vous pouvez toujours utiliser des constructions EF régulières en mappant simplement vos classes à leurs tables correspondantes et en forçant la jointure dans LINQ-To-Entities :
using(var ctx = new MyDbContext())
{
return ctx.TableA
.Join(ctx.TableB, a=>a.B_Id, b=>b.Id, (a,b)=>
new QueryResult{TableA=a, TableB=b});
}
Je pense que c'est le seul moyen, au moins jusqu'à EF6.