要将SQL LIKE查询转换为在字符串的开头和结尾都有"%"(百分比)运算符的LINQ,我们使用Contains()
方法。
e.g。
SELECT * FROM [User] WHERE Username LIKE '%test%'
等效的LINQ是:
var users = (from usr in Context.Users
where usr.Username.Contains("test")
select usr).ToList();
与输入文本中包含多个"%"(百分比)运算符的以下查询相同?
SELECT * FROM [User] WHERE Username LIKE '%test%email%'
感谢任何帮助。
注意:查询将在EntityFramework(版本6.1.3)中执行
答案 0 :(得分:5)
发布@Fabio和@CodeNotFound给出的评论作为参考答案。
在EntityFramework版本 6.2.0 :
中var users = (from usr in Context.Users
where DbFunctions.Like(usr.Username, "%test%email%")
select usr).ToList();
答案 1 :(得分:-1)
检查此解决方案我认为您可以使用此方法获得答案。
参考链接:Tutorial