- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我有一个业务层调用,其工作方式如下:
CustomerRepository.Get(c => SqlFunctions.PatIndex("%" + arg + "%", c.FirstName));
我正在尝试使用表达式来构建它:
public virtual IEnumerable<TEntity> Like(string LikeString, string Target)
{
MethodInfo method = typeof(SqlFunctions).GetMethod("PatIndex");
var arg1 = Expression.Constant(LikeString);
var item = Expression.Parameter(typeof(TEntity), "item");
var prop = Expression.Property(item, Target);
MethodCallExpression resultExp =
Expression.Call(method, arg1, prop);
var value = Expression.Constant(0, typeof(int?));
var greaterThan = Expression.GreaterThan(resultExp, value);
var lambda = Expression.Lambda<Func<TEntity, bool>>(greaterThan, item);
var result = Repo<TEntity>.Get().AsQueryable().Where(lambda);
return result;
}
当我调用上述方法时,出现以下异常:
此函数只能从 LINQ to Entities 调用。
关于如何克服这个问题或做我想让它做的事有什么想法吗?我的表达式代码看起来正常吗?
最佳答案
解决问题
来自:
var result = Repo<TEntity>.Get().AsQueryable().Where(lambda);
到:
var result = Repo<TEntity>.Get(lambda);
关于c# - 如何用表达式调用 SqlFunctions.PatIndex()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16898501/
有类似的问题,但我一直无法找到这个特定案例的答案。 我正在尝试对列执行替换,以便将任何类型的括号内的任何内容替换为硬编码字符串。 例如字符串 012345[678]将更改为 012345[XXXXX]
我有许多不同类型的字符串,但它们都遵循两种相同的模式: ABC123-S-XYZ789 ABC123-P-XYZ789 问题 1: 我知道如何提取第一部分:ABC123 但是我如何提取第二部分???
我有一个业务层调用,其工作方式如下: CustomerRepository.Get(c => SqlFunctions.PatIndex("%" + arg + "%", c.FirstName));
我需要在表达式中使用 SqlFunctions.PatIndex。 Func, KendoFilterDescription, IQueryable> appendFilter =
我试图弄清楚如何使用 patindex 来查找一系列字母字符,但排除重音字符。如果我直接搜索,使用默认整理(不敏感)就可以了。但是,当我搜索一系列字母时,它将匹配重音字符 SELECT IIF
如何检查字符串中是否存在!@#$%^&*()_-+特殊字符? 我试过了 SELECT PATINDEX('!@#$%^&*()_-+', 'test-'); SELECT PATINDEX('[!@
我正在使用 patindex 进行“MD”或“DO”的模式搜索。以下语句返回 3。我是否以错误的方式使用它,或者是否有其他检查条件的方法? select PATINDEX ('%[MD,DO]%','
我有一个查询如下(简化)... SELECT * FROM table1 AS a INNER JOIN table2 AS b ON (a.name LIKE '%' + b.n
我有以下查询: select [Service Item Value], SUBSTRING ( [Service Item Value], PATINDEX('%[3][C]
如何检查字符串中是否存在!@#$%^&*()_-+特殊字符? 我试过了 SELECT PATINDEX('!@#$%^&*()_-+', 'test-'); SELECT PATINDEX('[!@
我一直在存储过程中使用 CHARINDEX 来检查 NVARCHAR(MAX) 类型的变量,但今天我发现 CHARINDEX有 8,000 字节的限制! 我找到这篇文章SQL CHARINDEX()
我找到了使用 PATINDEX 查找下划线位置的解决方案: DECLARE @a VARCHAR(10) SET @a = '37_21' PRINT PATINDEX('%_%', @a)
我有 hql 查询: ... WHERE len(p.sms.message) - len(replace(p.sms.message,:message1,'')) = 1 AND PATINDEX(
我需要相当于 SQL 函数的 Postgres patindex 最佳答案 没有与 SQL Server 的 PATINDEX 函数完全等价的函数。您可以根据需要使用其他字符串函数。这是文档:http
我正在转换一个 sql server 脚本,我需要在 MYSQL 中转换 PATINDEX()。你能建议哪个MYSQL函数类似于PATINDEX() 最佳答案 REGEXP_INSTR功能与 PatI
1、测试环境: 1。数据库:Sql Server 2008 2。测试表:15000记录,char类型主键,无其他索引 3。测试字段:ntext 类型,最大数据长度12000 2、测试语句:
我正在尝试提取 ###x### , ###x## ,有时 #x# .有时数字和 x 之间可能有一个空格。本质上,我可能会遇到像这样的字符串 720x60 720x600 720 x 60 720_x_
我正在尝试验证 NANP 格式的电话号码。 我正在使用这个代码 patindex('+1[2–9][0-9][0-9][2–9][0-9][0-9][0-9][0-9][0-9][0-9]', n)
我注意到 SQL Server 上的 PATINDEX(我使用的是 2016)给出了奇怪的结果。我怀疑这与排序规则和字符集有关。 我正在尝试使用 PATINDEX 获取第一个空格或连字符的索引。 在具
我正在寻找从一些 varchar 中提取 float ,使用 PATINDEX() 来发现它们。我知道在每个 varchar 字符串中,我只对存在的第一个 float 感兴趣,但它们可能有不同的长度。
我是一名优秀的程序员,十分优秀!