基本的に、次のテーブルを取得しました: UserProfile - UserId と、Referer Leadという名前の UserProfile が含まれています- Owner という名前の UserProfile (FK) が含まれています
私が探しているのは、特定のユーザー プロファイルのすべての紹介のすべてのリードを取得することです。
次のプロセスを考えていました: userprofile のすべての紹介を取得する 紹介ごとに、所有者が紹介と一致するすべてのリードを取得します。
LINQ to entity を使用してこれを (またはよりスマートに) 実行するにはどうすればよいですか?
私は次のことをいじっています:
var referrals = db.UserProfiles.Where(u => u.Referer.UserId == UserId);
            var allLeads = db.Leads.Include("Owner").Where(l => true);
            List<Lead> totalLeads = new List<Lead>();
            if (referrals.Any())
            {
                foreach(UserProfile u in referrals.ToList())
                {
                    var leads = allLeads.Where(l => l.Owner.UserId == u.UserId);
                    if (leads.Any())
                    {
                        foreach (Lead l in leads.ToList())
                        {
                            totalLeads.Add(l);
                        }
                    }
                }
            }