0
我有以下代码:LINQ - 日期时间为String再次
result = from i in _dbContext.Meetings
where i.UserInvitedID == CurrentUserID && i.MeetingStatus == null && i.AllowedTime.AllowedDate.Day >= date
//where i.UserInvitedID == CurrentUserID && i.MeetingStatus == null && EntityFunctions.TruncateTime(i.AllowedTime.AllowedDate.Day) >= date
select new ITW2012Mobile.Core.DataTable.MeetingModel2()
{
Name = i.UserInviter.FirstName + " " + i.UserInviter.LastName,
Company = i.UserInviter.Company,
MeetingID = i.MeetingID,
Time = EntityFunctions.AddMinutes(EntityFunctions.AddHours(i.AllowedTime.AllowedDate.Day, i.AllowedTime.Hour).Value, i.AllowedTime.Minute).Value.ToString("0:dddd, MMMM d, yyyy 0:t"),
Image = i.UserInviter.ProfileImage,
Username = i.UserInviter.aspnet_User.UserName
};
时间是字符串。当然,我得到
Exception error: {"LINQ to Entities does not recognize the method 'System.String ToString()' method, and this method cannot be translated into a store expression."}
但如何在我的情况下正确写入?
后,我该怎么办呢?在选择部分我必须设置时间,对吧? – John 2012-03-01 15:56:26
你可以这样做:'select new {A = iA,B = iB})。AsEnumerable()。选择(i => new MeetingModel2 {A = iAToString(...),B = iB);' – 2012-03-01 16:03:39
是非常长的脚本(我有大约相似的10个地方,不能合并成一个) – John 2012-03-01 16:09:48