【发布时间】:2020-11-29 10:23:39
【问题描述】:
LINQ to Entities 不支持指定的类型成员“日期”。仅支持初始化器、实体成员和实体导航属性
var tripss = context.trips.Join(context.UserMasters, t => t.DriverId, u => u.UserID,
(tr, us) => new
{
DateOfTrip = DbFunctions.TruncateTime(tr.DateOfTrip),
DriverId = tr.DriverId,
FromCity = tr.FromCity,
ID = tr.ID,
PlaceToMeet = tr.PlaceToMeet,
TimeOfTrip = tr.TimeOfTrip,
ToCity = tr.ToCity,
Name = (us.FullName == null) ? us.UserName : us.FullName,
ImageUrl = us.ImageUrl,
PostTime=(DbFunctions.TruncateTime( tr.TimeOfPost)==DateTime.Now.Date)?
(tr.TimeOfPost.Value.Hour==DateTime.Now.Hour)? (DbFunctions.DiffMinutes(DateTime.Now,tr.TimeOfPost).Value)
: DbFunctions.DiffHours(DateTime.Now,tr.TimeOfPost).Value : DbFunctions.DiffDays(DateTime.Now, tr.TimeOfPost).Value
}).ToList();
【问题讨论】:
-
@TimothyG。不,不是,答案在这段代码中 {DbFunctions.TruncateTime(tr.TimeOfPost)==DateTime.Now.Date)} 在 linq 表达式中使用日期时间时,我们不能在 datetime 类中使用日期属性
标签: c# asp.net entity-framework linq asp.net-web-api