【发布时间】:2010-11-02 16:35:08
【问题描述】:
我正在尝试使用 LINQ to Entities 构建搜索页面,但以下代码给了我一个关于 l.t.e. 的运行时错误。无法识别 'Boolean StartsWith()。代码编译得很好。与将 StartsWith 过滤到存储过程相比,我怎样才能更好地解决这个问题?
return from dp in dents.DirectoryPersonEntrySet
where
((dp.LastName.StartsWith(searchTerm, StringComparison.CurrentCultureIgnoreCase)) ||
(dp.Department.StartsWith(searchTerm, StringComparison.CurrentCultureIgnoreCase)) ||
dp.Extension.StartsWith(searchTerm, StringComparison.CurrentCultureIgnoreCase))
select dp;
【问题讨论】:
-
您能发布“以下代码”吗?还是主题是完整的代码?你的意思是 String.StartsWith 而不是 Boolean.StartsWith?
-
@Rutger,谢谢,我太快点击发送并忘记了代码。我还修复了签名。
-
至少多出6个括号,我们还缺少函数原型和类定义...
-
尝试使用没有 StringComparison.CurrentCultureIgnoreCase 的 StartsWith 重载。
-
我没有用过LINQ to Entities所以不知道它是否支持通配符,但是不能用“like”加通配符吗?
标签: .net linq entity-framework linq-to-entities