【发布时间】:2019-09-12 21:02:41
【问题描述】:
我在尝试通过 EF6 中的 LINQ 对某些值进行分组和求和时遇到以下错误:
无法创建“System.Char”类型的常量值。此上下文仅支持原始类型或枚举类型。
我在 StackOverflow 上查看了六个类似的问题,但找不到我的问题。这是查询:
var q = from c in _context.HoursProviderCosts
where c.PatientInsuranceCompanyName == insuranceName
&& c.HoursDate >= startDate
&& c.HoursDate <= endDate
group c by new { c.ID, c.PatientFirstName, c.PatientLastName } into g
select new Models.InsuranceCostListItem
{
PatientID = g.Key.ID,
PatientName = g.Key.PatientFirstName + ' ' + g.Key.PatientLastName,
Total = g.Sum(x => x.ProviderRate)
};
return q.ToList();
这是我分组中的内容(我是新手)吗?底层的EF6模型很好(我可以展开_context.HoursProviderCosts的结果视图看看数据就好了)。
谢谢
编辑:方法签名:
public List<Models.InsuranceCostListItem> InsuranceCostsListItems(DateTime periodStart, string insuranceName) {
【问题讨论】:
-
尝试使用字符串文字而不是字符文字:
PatientName = g.Key.PatientFirstName + " " + g.Key.PatientLastName -
@EdPlunkett AGH!多么美好的一天......把它扔到一个答案中,我会标记它
-
(我把它归咎于 JavaScript)