如何在我的lambda表达式中使用带有2个参数的方法

问题描述

|| 我使用linq使用Entity Framework从数据库访问表
MyDBEntities context = new MyDBEntities;
int id = 111;
var item = context.MyTable.Where(i => i.id == id).Single();
这可以正常工作,但是现在我创建了一个我想使用的方法来代替id检查:
bool AreNear(string Adress,object Adress)
我想用这种方式
 string adress = \"...\";
 var item = context.MyTable.Where(i => AreNear(i.adress,adress) ).Single();
但执行时出现错误,提示我无法在查询中使用该方法 有没有办法使其工作?     

解决方法

不幸的是,没有办法使它起作用。 这样做的原因是LINQ查询不是真正作为.NET代码执行,而是由EF提供​​程序转换为SQL。该EF提供程序不知道如何将“ 3”转换为SQL,因此失败。     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...