Я хочу вернуть список, который содержит данные, связанные с распределением по возрасту (например, для возрастов 0-9 лет - 10 человек, для 10-19 лет - 7 человек и т. Д.)
Это мой запрос: -
public List<ReportHelper> GetAgeDistribution(int userId)
{
var itemList = (from item in this.ObjectContext.TreeMembers
where item.UserId == userId
group (DateTime.Now - (item.Birthdate ?? DateTime.Now)).Days/365.25
by ((DateTime.Now - (item.Birthdate ?? DateTime.Now)).Days / 365.25) / 9);
List<ReportHelper> list = new List<ReportHelper>();
foreach (var item in itemList)
list.Add(new ReportHelper { Data = item.Count(), Label = item.Key + "-" + (item.Key + 9) });
return list;
}
Когда я запускаю этот запрос, я получаю исключение dbarithmeticexpression:
DbArithmeticExpression arguments must have a numeric common type.
Как мне решить эту ошибку?Я знаю, что Entity Framework 4 не может перевести мое выражение в обычный старый SQL.Как я могу намекнуть, что я пытаюсь сделать?
Заранее спасибо:)