用户trimstart在实体框架中查询 [英] user trimstart in entity framework query
本文介绍了用户trimstart在实体框架中查询的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
这是我的查询:
string number =123;
Workers.Where(x => x.CompanyId == 8).Where(x => x.Number.TrimStart('0')== number);
如何在没有AsEnumerable的情况下使这个查询工作(在公司8中有很多工作人员) ?
解决方案
尝试使用 SqlFunctions.PatIndex
为此。我测试了一个类似于下面的查询,值为000123
,000One
,abcde
,并正确选择值为123
,One
和abcde
。
Workers.Where x => x.CompanyId == 8&&b $ b x.Number.Substring(SqlFunctions.PatIndex(%[^ 0]%,x.Number).Value - 1)== number) ;
How can I use trimstart so entity framework will understand what to do?
Here is my query:
string number="123";
Workers.Where(x => x.CompanyId == 8).Where(x => x.Number.TrimStart('0') == number);
How can I make this query work without the AsEnumerable (there are a lot of workers in company 8)?
解决方案
Try using SqlFunctions.PatIndex
for this. I tested a query similar to the one below with the values "000123"
, "000One"
, "abcde"
and it correctly selected rows with the values "123"
, "One"
, and "abcde"
.
Workers.Where(x => x.CompanyId == 8 &&
x.Number.Substring(SqlFunctions.PatIndex("%[^0]%", x.Number).Value - 1) == number);
这篇关于用户trimstart在实体框架中查询的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文