我有一个包含很多属性的对象列表。我想编写一个EF6查询来提取匹配对象列表中特定属性的所有记录。实体框架6具有多维对象的条件
这是我有一个它不工作。
userRoles
是我的List<>
和RoleID
是我想检查该实体的RoleId
的财产。
List<DataAccess.Entities.DB.StorageContainerRole>
containerRoles = db.StorageContainerRoles
.Where(x => userRoles.Select(y => y.RoleID.Value)
.Contains(x.RoleId.Value))
.Include(z => z.StorageContainer)
.ToList();
这是我收到的错误:
无法创建类型的常量值 'DataAccess.Entities.DB.UserRole'。只有原始类型或枚举类型在此上下文中受支持。
任何帮助,将不胜感激!
你怎么知道它不工作?你检查了你的数据吗?你的查询看起来不错。 –
我在我的问题中增加了错误 – Nugs
将'userRoles.Select(y => y.RoleID.Value)'指派给查询外部的变量并使用里面的变量(EF6要求)。 –