我的LINQ to实体查询有问题

我的LINQ to实体查询有问题,linq,entity-framework,linq-to-entities,Linq,Entity Framework,Linq To Entities,我目前有一个LINQ查询: public List<EventSchool> GetEventSchools(int eventID) { var eventSchools = db.EventSchools .Include("Organisation") .Where(e => e.EventID == eventID) .ToList(); foreach (

我目前有一个LINQ查询:

public List<EventSchool> GetEventSchools(int eventID)
    {
        var eventSchools = db.EventSchools
            .Include("Organisation")
            .Where(e => e.EventID == eventID)
            .ToList();

        foreach (var ev in eventSchools)
        {
            if (db.EventSchoolKeyStages.Where(e => e.EventSchoolID == ev.EventSchoolID).Count() > 0)
            {
                int ks = db.EventSchoolKeyStages
                .Where(e => ev.EventSchoolID == ev.EventSchoolID)
                .Sum(e => e.Males + e.Females);

                ev.StudentNumbers = ks;
            }
        }

        return eventSchools;
    }
所有项目的StudentNumber均为20,而不是:

Item 1 - 20
Item 2 - 3
Item 3 - 700

不确定我做错了什么?

您的查询中有一个错误:

.Where(e => ev.EventSchoolID == ev.EventSchoolID)
应该是:


.
其中(e=>e.EventSchoolID==ev.EventSchoolID)
您的查询中有一个错误:

.Where(e => ev.EventSchoolID == ev.EventSchoolID)
应该是:

.
其中(e=>e.EventSchoolID==ev.EventSchoolID)
您在这里输入了一个错误:

.Where(e => ev.EventSchoolID == ev.EventSchoolID)
这句话永远是真的。我猜你的意思是

.Where(e => e.EventSchoolID == ev.EventSchoolID)
            ^^^
在指定的位置有不同。

您这里有一个打字错误:

.Where(e => ev.EventSchoolID == ev.EventSchoolID)
这句话永远是真的。我猜你的意思是

.Where(e => e.EventSchoolID == ev.EventSchoolID)
            ^^^
在指定的位置不同