ユーザーにもユーザーでもあるユーザーの集まりがある標準的なソーシャルネットワーキングのパラダイムがあります。エンティティフレームワーク多対多結合クエリ
私はエンティティFramworkコードファーストを使用していて、次のように私の友人関係が定義されている:
modelBuilder.Entity<User>()
.HasMany(u => u.Friends)
.WithMany()
.Map(m =>
{
m.ToTable("Friendships");
m.MapLeftKey("UserId");
m.MapRightKey("FriendId");
});
私は何をしたい、それぞれが返されるかどうかの指標を持つすべてのユーザーを返す私のユーザーテーブルを検索することですユーザーは現在のユーザーと友人です。明らかにするために、友人であるユーザーと友人ではないユーザーを返すだけでなく、各ユーザーが友人であるかどうかを示すブール値を返したいと思います。私はTSQLでこれを基本的な左外部結合とする方法を知っています。
私はLINQで左結合を行う方法の例を見てきましたが、私が見たすべての例はマップされた型に結合しています。 My Friendships列にマップされたタイプがありません。
どのようにEntityFrameworkでこれを行うのですか?