实体框架查询中的user trimstart

Nao*_*aor 6 .net c# linq entity-framework

我怎样才能使用trimstart所以实体框架会理解该怎么做?

这是我的查询:

string number="123";
Workers.Where(x => x.CompanyId == 8).Where(x => x.Number.TrimStart('0') == number);
Run Code Online (Sandbox Code Playgroud)

如何在没有AsEnumerable的情况下使这个查询工作(公司8中有很多工人)?

Jef*_*ata 13

尝试使用SqlFunctions.PatIndex此功能.我测试类似下面的一个与所述的值的查询"000123","000One","abcde"并正确选择的行与所述值"123","One""abcde".

Workers.Where(x => x.CompanyId == 8 && 
                   x.Number.Substring(SqlFunctions.PatIndex("%[^0]%", x.Number).Value - 1) == number);
Run Code Online (Sandbox Code Playgroud)