相关疑难解决方法(0)

实体框架 - "无法创建类型'闭包类型'的常量值..."错误

为什么我会收到错误:

无法创建"闭包类型"类型的常量值.在此上下文中仅支持基本类型(例如Int32,String和Guid).

当我尝试枚举以下Linq查询?

IEnumerable<string> searchList = GetSearchList();
using (HREntities entities = new HREntities())
{
   var myList = from person in entities.vSearchPeople
   where upperSearchList.All( (person.FirstName + person.LastName) .Contains).ToList();
}
Run Code Online (Sandbox Code Playgroud)

更新:如果我尝试以下尝试隔离问题,我得到相同的错误:

where upperSearchList.All(arg => arg == arg) 
Run Code Online (Sandbox Code Playgroud)

所以看起来问题出在All方法上,对吧?有什么建议?

linq entity-framework

79
推荐指数
3
解决办法
9万
查看次数

LINQ to Entities无法识别该方法

我有Linq to Entities的问题,我无法找到解决方法.

这是我的代码:

var queryResult = result.Where(x => x.FollowedUp.Value.GetWeekFromDateTime() 
    ==  DateTime.Now.GetWeekFromDateTime()).Select(x => x);
Run Code Online (Sandbox Code Playgroud)

我的扩展方法是:

    public static int GetWeekFromDateTime(this DateTime date)
    {
        return System.Threading.Thread.CurrentThread.CurrentCulture.Calendar.GetWeekOfYear(date, CalendarWeekRule.FirstFourDayWeek, DayOfWeek.Monday);
    }
Run Code Online (Sandbox Code Playgroud)

问题:

我得到"LINQ to Entities无法识别方法GetWeekFromDateTime",我理解为什么因为它试图将我的代码翻译成sql代码并且"GetWeekFromDateTime"不存在.但是我该怎么办呢?我想比较从数据库到本周数据的日期的周数.

谢谢!

.net c# entity-framework

2
推荐指数
1
解决办法
1836
查看次数

标签 统计

entity-framework ×2

.net ×1

c# ×1

linq ×1