クラスを対応するテーブルにマッピングし、LINQ-To-Entities で結合を強制するだけで、通常の EF 構造を引き続き使用できます。
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});
}
少なくとも EF6 までは、それが唯一の方法だと思います。