已经被Linq to entity折磨疯了,谁帮我看下这个错误.

星九九 2013-04-09 05:50:16

from a in fkd.Deliveries.Take(10)
where a.OrderStatusID == 5
select new
{
week = SqlFunctions.DateName(strWeek, a.ActualSendTime.Value)
};


想返回当前日期所属第几周,结果报如下错误!!
LINQ to Entities does not recognize the method 'System.String DateName(System.String, System.Nullable`1[System.DateTime])' method, and this method cannot be translated into a store expression.
...全文
316 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
引用 7 楼 jxwzx 的回复:
应该不行吧,怎么写的怎么能转换成sql语句呢?
你可以把查询分成为两段,前一段使用EF,后一段使用Linq to Object。
星九九 2013-04-09
  • 打赏
  • 举报
回复
引用 6 楼 gxingmin 的回复:
不用自带的,自己写一个行吗?我测试可以的 C# code?123456789101112131415161718from a in fkd.Deliveries.Take(10) where a.OrderStatusID == 5 select new { week = weekofyear( a.ActualSendTime.Value) }; public ……
应该不行吧,怎么写的怎么能转换成sql语句呢?
gxingmin 2013-04-09
  • 打赏
  • 举报
回复
不用自带的,自己写一个行吗?我测试可以的
from a in fkd.Deliveries.Take(10)
   where a.OrderStatusID == 5
   select new
   {
     week = weekofyear( a.ActualSendTime.Value)
   };


 public static string weekofyear(DateTime dtime) 
           { 
               int weeknum = 0; 
               DateTime tmpdate = DateTime.Parse(dtime.Year.ToString() + "-1" + "-1"); 
               DayOfWeek firstweek = tmpdate.DayOfWeek; 
               //if(firstweek) 
               for (int i = (int)firstweek + 1; i <= dtime.DayOfYear; i = i + 7) 
               { weeknum = weeknum + 1; }
               return weeknum.ToString();
           }
  • 打赏
  • 举报
回复
try.. SqlFunctions.DateName(strWeek, a.ActualSendTime)
星九九 2013-04-09
  • 打赏
  • 举报
回复
引用 3 楼 gxingmin 的回复:
SqlFunctions.DateName 这个在哪儿定义的
System.Data.Objects.SqlClient.SqlFunctions.DateName 系统自带的
gxingmin 2013-04-09
  • 打赏
  • 举报
回复
SqlFunctions.DateName 这个在哪儿定义的
星九九 2013-04-09
  • 打赏
  • 举报
回复
没人能解答这个问题么?
星九九 2013-04-09
  • 打赏
  • 举报
回复
在线等.补充下想按周分组也是报这个错误.

EQuery1.GroupBy(a => new { Week = SqlFunctions.DateName("WEEK", a.ActualSendTime.Value ) });

8,497

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 LINQ
社区管理员
  • LINQ
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧