ここに私の問題があります:同じクラスタイプの2つのリストプロパティを持つクラスがあります(ただし、入力方法に関していくつかの異なる制限があります)、次のようにしましょう:
public class Team 
{
    [Key]
    public int IDTeam { get; set; }
    public string TeamName { get; set; }
    public List<Programmer> Members { get; set; }
    public List<Programmer> Leaders { get; set; }
    public LoadLists(MyProjectDBContext db) 
    {
        this.Members = db.Programmers.Where(p => p.IDTeam = this.IDTeam 
                 && (p.Experience == "" || p.Experience == null)).ToList();
        this.Leaders = db.Programmers.Where(p => p.IDTeam = this.IDTeam 
                 && (p.Experience != null && p.Experience != "")).ToList();
    }
}
public class Programmer 
{
    [Key]
    public int IDProgrammer { get; set; }
    [ForeignKey("Team")]
    public int IDTeam { get; set; }
    public virtual Team Team { get; set; }
    public string Name { get; set; }
    public string Experience { get; set; }
}
ある時点で、メンバーとリーダーを含むチームのリストを取得する必要があります。このために、次のようなものを想定します。
return db.Teams
    .Include(m => m.Members.Where(p => p.Experience == "" || p.Experience == null)
    .Include(l => l.Leaders.Where(p => p.Experience != null && p.Experience != "")
    .OrderBy(t => t.TeamName)
    .ToList();
そしてもちろん、この場合、私はそれが間違っていると仮定します (まったく機能していないため)。それを達成する方法についてのアイデアはありますか?
編集: もう少し明確にするために、チーム クラスの 2 つのリスト プロパティは次のように入力する必要があります。
1 - メンバー属性 - 経験のない関連するすべてのプログラマーを含める必要があります (proggramer.Experience == null または "");
2 - Leaders 属性 - 関連するすべてのプログラマー (programmer.Experiente != null または "") を含める必要があります。
編集 2: MyProjectDbContext 宣言は次のとおりです。
public class MyProjectDBContext : DbContext
{
    public DbSet<Team> Teams { get; set; }
    public DbSet<Programmer> Programmers { get; set; }
}