尝试从db获取项目但获取System.NotSupportedException,发现如何避免,但对我来说它没有帮助。我有什么想法可以避免这种异常吗?
return await DbContext.Members.Where(
x => x.ClientId == criteria.ClientId
&& DbFunctions.TruncateTime(x.CreatedOn).Value.Date
>= criteria.StartDate.Value.Date
&& DbFunctions.TruncateTime(x.CreatedOn).Value.Date
<= criteria.EndDate.Value.Date
).ToListAsync();
答案 0 :(得分:2)
DbFunctions.TruncateTime
会截断日期的时间,因此无需使用.Value.Date
,这是造成异常的原因。
答案 1 :(得分:1)
您可以使用 EntityFunctions.TruncateTime :
return await DbContext.Members.Where(
x => x.ClientId == criteria.ClientId &&
EntityFunctions.TruncateTime(x.CreatedOn) >= criteria.StartDate.Value.Date &&
EntityFunctions.TruncateTime(x.CreatedOn) <= criteria.EndDate.Value.Date
).ToListAsync();