Linq中的嵌套查询到具有相同dbset的实体

时间:2013-04-04 12:37:17

标签: c# linq entity-framework entity-framework-4

我有以下Linq查询:

 var date = (from TA in _context.TAs
             where TA.Id == (from TB in _context.TAs
                             join TC in _context.TCs on TB.Id equals TC.Id
                             where TB.XXX == TA.XXX &&
                                   TB.YYY == yyy &&
                                   TB.Date < _Date
                             group TB by 1 into grouped
                             select grouped.Max(x => x.Id)).FirstOrDefault()
             select TA.Date).FirstOrDefault().AddMonth(1);

当我运行查询时,我得到一个例外:

ORA-00904: "Extent1"."XXX": invalid identifier

我知道这个异常意味着什么,但参与此查询的所有类都已正确配置并映射到数据库,因为我在其他LINQ to实体查询中使用它们,没有任何无效的标识符异常。

请帮助我在此查询中找到问题?

先谢谢。

1 个答案:

答案 0 :(得分:0)

尝试此查询:

var date = (from TA in _context.TAs
            join TC in _context.TCs on TB.Id equals TC.Id
            where TA.YYY == yyy &&
                  TA.Date < _Date
            orderby TA.Id
            select TA.Date).Last();