Linq 如何从模型中的另一个表中添加总和?

Linq 如何从模型中的另一个表中添加总和?,linq,linq-to-sql,asp.net-mvc-5,Linq,Linq To Sql,Asp.net Mvc 5,因此,我在控制器中有如下视图设置: public ActionResult View(Guid projectID) { OnboardModel model = context.onboard_projectInfos.Where(x => x.projectID == projectID).Select(x => new OnboardModel()

因此,我在控制器中有如下视图设置:

    public ActionResult View(Guid projectID)
    {
        OnboardModel model = context.onboard_projectInfos.Where(x => x.projectID == projectID).Select(x =>
                                            new OnboardModel()
                                            {
                                                propertymanagername = x.propertymanagername,
                                                propertymanagercontactemail = x.propertymanagercontactemail,
                                                date_modified = (DateTime)x.date_modified,
                                                projectmanagercontactnumber = x.projectmanagercontactnumber,
                                                Developer = x.onboard_projectCreate.Developer,
                                                status1 = x.onboard_projectCreate.status1,
                                                ProjectName = x.onboard_projectCreate.ProjectName
                                            }).SingleOrDefault();


        var pix = projectID.ToString();
        context.onboard_BuildingInfos.Where(x => x.buildprojectID == pix).GroupBy(x => x.buildprojectID).Select(g => {
            model.totalres = g.Sum(b => b.numberofres);
            model.totalcom = g.Sum(b => b.numberofcommer);
        });

        return View(model);
    }
问题是从BuildingFos中获取numberofres和numberofcommer的总和。 使用.Select会显示错误:

错误CS0411无法从用法推断方法“Queryable.Select(IQueryable,Expression>)”的类型参数。尝试显式指定类型参数

如何正确编写此LINQ语句


谢谢。

您不能在select中修改对象(只能创建新对象)。此外,不能向现有对象添加新属性

我们假设
OnboardModel
定义了
totalres
totalcom
属性

var query = context.onboard_BuildingInfos
                   .Where(x => x.buildprojectID == pix)
                   .GroupBy(x => x.buildprojectID);

foreach(var g in query)
{
        model.totalres = g.Sum(b => b.numberofres);
        model.totalcom = g.Sum(b => b.numberofcommer);
}

哦,我明白了,谢谢你。