LINQ to Entities 不支持 LINQ 表达式节点类型“Invoke”
2013-03-24 22:01
501 查看
LINQ to Entities 不支持 LINQ 表达式节点类型“Invoke”
今天使用使用动态查询的时候出现出现错误“LINQ to Entities 不支持 LINQ 表达式节点类型‘Invoke’。”,代码如下:
static void test()
{
ArticleEntities Entity =
new ArticleEntities();
Expression<Func<Users,
bool>>
where
= PredicateBuilder.True<Users>()
.And(m=>m.Name.Contains("sanmen"));
IEnumerable<Users> list
= Entity.Users.Where(where);
foreach (Users user
in list)
{
Console.WriteLine(user.ID +
" "
+ user.Name);
}
}
研究了半天,发现他在Linq to sql 上运行正常,郁闷、费解了半天。找了一天终于找到解决方法即
where 后加.comple(),
代码:
static void test()
{
ArticleEntities Entity =
new ArticleEntities();
Expression<Func<Users,
bool>>
where
= PredicateBuilder.True<Users>()
.And(m=>m.Name.Contains("sanmen"));
IEnumerable<Users> list
= Entity.Users.Where(where.Compile());
foreach (Users user
in list)
{
Console.WriteLine(user.ID +
" "
+ user.Name);
}
}
解决是解决了但是不知其原理,请教各位路过的大神解释解释。
今天使用使用动态查询的时候出现出现错误“LINQ to Entities 不支持 LINQ 表达式节点类型‘Invoke’。”,代码如下:
static void test()
{
ArticleEntities Entity =
new ArticleEntities();
Expression<Func<Users,
bool>>
where
= PredicateBuilder.True<Users>()
.And(m=>m.Name.Contains("sanmen"));
IEnumerable<Users> list
= Entity.Users.Where(where);
foreach (Users user
in list)
{
Console.WriteLine(user.ID +
" "
+ user.Name);
}
}
研究了半天,发现他在Linq to sql 上运行正常,郁闷、费解了半天。找了一天终于找到解决方法即
where 后加.comple(),
代码:
static void test()
{
ArticleEntities Entity =
new ArticleEntities();
Expression<Func<Users,
bool>>
where
= PredicateBuilder.True<Users>()
.And(m=>m.Name.Contains("sanmen"));
IEnumerable<Users> list
= Entity.Users.Where(where.Compile());
foreach (Users user
in list)
{
Console.WriteLine(user.ID +
" "
+ user.Name);
}
}
解决是解决了但是不知其原理,请教各位路过的大神解释解释。
相关文章推荐
- LINQ to Entities 不支持 LINQ 表达式节点类型“Invoke”
- 解决 LINQ to Entities 不支持 LINQ 表达式节点类型“Invoke”
- LINQ to Entities 不支持 LINQ 表达式节点类型“Invoke”(笔记)
- LINQ to Entities 不支持 LINQ 表达式节点类型“Invoke”
- LINQ to Entities 不支持 LINQ 表达式节点类型“ArrayIndex”
- LINQ to Entities 不支持指定的类型成员“ReviewRemainDays”。只支持初始值设定项、实体成员和实体导航属性
- LINQ to Entities 不支持指定的类型成员
- dhl:报错:LINQ to Entities 不支持指定的类型成员“Date”
- 无法将类型“System.Nullable`1”强制转换为类型“System.Object”。LINQ to Entities 仅支持强制转换 EDM 基元或枚举类型。
- Lambda表达式--使用方法语法的复杂查询: join (在单个 LINQ to Entities 查询中的两个结构上不兼容的初始化过程中出现类型)
- LINQ to Entities 不识别方法“System.String ToString()”,因此该方法无法转换为存储表达式。
- LINQ to Entities 不识别方法“System.String ToString()”,因此该方法无法转换为存储表达式。
- LINQ to Entities 不识别方法 xxx,此该方法无法转换为存储表达式
- LINQ to Entities 不识别方法"System.String ToString()",因此该方法无法转换为存储表达式 的解决方法
- 【项目实战】--仅对 LINQ to Entities 中已排序的输入支持方法“Skip”。必须在调用“Skip”方法之前调用方法“OrderBy”
- LINQ to Entities 不识别方法“System.String ToString()”,因此该方法无法转换为存储表达式。
- LINQ to Entities 不识别方法“XX”,因此该方法无法转换为存储表达式
- 在 LINQ to Entities 查询中无法构造实体或复杂类型
- LINQ to Entities,基于方法查询,查询表达式语法
- LINQ to Entities 不识别方法“System.String ToString(System.String)”因此该方法无法转换为存储表达式