我有这样的Linq查询,工作正常的GroupBy DAYOFWEEK Linq中
var test = (from c in context.ConsumptionSet
join pi in context.PropertiesInstanceSet on c.PropertiesInstanceID equals pi.PropertiesInstanceID
join ep in context.EquipmentPropertiesSet on pi.EquipmentPropertiesID equals ep.EquipmentPropertiesID
where (ep.EquipmentID == equipmentId && pi.ProprietesName == ProprietesName.Energy && c.Date <= DateTime.Today && c.Date >= EntityFunctions.AddDays(DateTime.Today, -7))
group c by c.Date.Day into grp
select new
{
test = grp.Key,
value = (from c2 in grp select c2.Value).Max()
}).ToList();
但我想这组结果由DayOfWeek
财产,而且好像LINQ的不允许它,因为我得到这个错误时,我将替换为group c by c.Date.DayOfWeek
: The specified type member 'DayOfWeek' is not supported in LINQ to Entities
是否有解决此问题的方法?
使用'SQL query'代替。 – gdoron 2013-04-09 16:28:04
嘿,当在Stackoverflow上发布一个问题时,你可以简化你的代码,所以它是特定的请。即删除所有连接和where子句等,以使其他人更清楚。谢谢。 – pfeds 2015-08-20 03:48:40