我正在尝试从EF 6迁移到EF Core。EF Core:无法绑定多部分标识符“m.Added ”
我有这样的LINQ to SQL查询返回每天上图:
var model = db.Photos
.Where(m => m.Added <= startDate && m.Active == true)
.GroupBy(m => new { Year = m.Added.Year, Month = m.Added.Month, Day = m.Added.Day })
.Select(m => m.FirstOrDefault())
.OrderByDescending(m => m.Added)
.ThenBy(m => m.Rates.Sum(r => r.Points))
.Take(10)
.ToList();
但EF核心相同的代码返回错误:
Core .Net SqlClient Data Provider: No column name was specified for column 1 of 'm2'. No column name was specified for column 2 of 'm2'. No column name was specified for column 3 of 'm2'. The multi-part identifier "m.Added" could not be bound. The multi-part identifier "m.Added" could not be bound. The multi-part identifier "m.Added" could not be bound.
我怎样才能把这种以EF核心?
您不应该需要“翻译”。它应该可以工作 - 这很可能是EF核心中的一个错误。查询构建仍在建设中(https://docs.efproject.net/en/latest/efcore-vs-ef6/features.html)。 –
tnx,任何ideea我如何得到这个工作?也许一些解决方法,直到EF团队添加这个? – lambidu
是的,解决方法。尝试在多个更简单的查询中获取数据。 –