Asp.net mvc 日期差异:此函数只能从LINQ调用到实体。
请问我该如何解决这个问题 此函数只能从LINQ调用到实体 这是我的密码Asp.net mvc 日期差异:此函数只能从LINQ调用到实体。,asp.net-mvc,Asp.net Mvc,请问我该如何解决这个问题 此函数只能从LINQ调用到实体 这是我的密码 public long TodayNotifications() { long notifications = _notificationsService.GetNotifications().Where(x => DbFunctions.DiffDays(x.NOTIFICATION_DATE, DateTime.Now) == 0).Count(); ret
public long TodayNotifications()
{
long notifications = _notificationsService.GetNotifications().Where(x => DbFunctions.DiffDays(x.NOTIFICATION_DATE, DateTime.Now) == 0).Count();
return notifications;
}
如果未使用Linq to实体,则不能使用
DbFunctions
。似乎您正在调用一个返回IEnumerable
的web服务或实现IEnumerable
的东西。您只需检查日期的日期组件是否相等,如下所示:
long notifications = _notificationsService.GetNotifications()
.Where(x => x.NOTIFICATION_DATE.Date == DateTime.Now.Date).Count();
如果要使用进行日期差异的Subtract
方法,请参阅以了解更多信息。以下是一个示例:
var date1 = new DateTime();
var date2 = date1.AddDays(1);
var days = date2.Subtract(date1).TotalDays;
如果未使用Linq to实体,则不能使用
DbFunctions
。似乎您正在调用一个返回IEnumerable
的web服务或实现IEnumerable
的东西。您只需检查日期的日期组件是否相等,如下所示:
long notifications = _notificationsService.GetNotifications()
.Where(x => x.NOTIFICATION_DATE.Date == DateTime.Now.Date).Count();
如果要使用进行日期差异的Subtract
方法,请参阅以了解更多信息。以下是一个示例:
var date1 = new DateTime();
var date2 = date1.AddDays(1);
var days = date2.Subtract(date1).TotalDays;
您必须确保
GetNotifications()
返回IQueryable
。否则,请更改您的Where()
条件,以使用标准的DateTime
方法执行天数差异计算。如果GetNotifications()返回的集合不是IQueryable
,我如何确保您的GetNotifications()返回IQueryable,然后您可以尝试此\u notifications服务.GetNotifications().Count(x=>x.NOTIFICATION\u DATE.DATE==DateTime.Today)
您必须确保您的GetNotifications()
返回IQueryable
。否则,请更改您的Where()
条件,以使用标准的DateTime
方法执行天数差异计算。如果GetNotifications()返回的集合不是IQueryable
,我如何确保您的GetNotifications()返回IQueryable,然后你可以试试这个\u notificationsService.GetNotifications().Count(x=>x.NOTIFICATION\u DATE.DATE==DateTime.Today)
谢谢。但是为什么我还有另一个错误?在序列化代码“public JsonResult SelectStates(int-id){IEnumerable states=_statesService.GetStates()”中的对象时检测到循环引用。其中(stat=>stat.COUNTRY_-id==id);返回Json(states);}@gbenga我不确定。请问另一个问题,因为这是一个全新的问题,我相信有人会帮助你。另外,在序列化过程中搜索循环引用,它可能会为您指明正确的方向。谢谢。但是为什么我还有另一个错误?在序列化代码“public JsonResult SelectStates(int-id){IEnumerable states=_statesService.GetStates()”中的对象时检测到循环引用。其中(stat=>stat.COUNTRY_-id==id);返回Json(states);}@gbenga我不确定。请问另一个问题,因为这是一个全新的问题,我相信有人会帮助你。此外,在序列化过程中搜索循环引用,它可能会为您指明正确的方向。