如何在Linq(lambda)中对Entity Framework执行此查询。
select * from table where name like '%someString%' order by name <'someString', name
我们说我在服务器上有这些数据:
aba
baa
通过&#39;%ba%&#39;
查询if I order by name the result will be :
aba - baa
if I order < name the result will be :
baa - aba (which is desired)
答案 0 :(得分:1)
如果我理解正确,您可以使用Entity Framework查询MySQL数据库表。
一种解决方案是创建一个包含您的实体及其排序分数的匿名对象。当然,将<{1}}替换为您的实体
Table
答案 1 :(得分:1)
aString.CompareTo(anOtherString) < 0
在SQL中被翻译为aString < anOtherString
(至少由Sql Server提供商,也许在MySql中,希望你很幸运)。所以在你的情况下它将是
from t in context.Table
where t.name.Contains(someString)
orderby (t.name.CompareTo(someString) < 0), t.name
select t
(p.campbell提供回到头版)。