操作符& # 39;= = & # 39;与操作数类型不兼容'和& # 39;guid # 39;使用Dynam
本文关键字:guid 使用 Dynam 操作数 操作符 类型 不兼容 | 更新日期: 2023-09-27 18:12:48
我正在使用动态Linq库源代码和基本文档以及Nuget版本
PM> Install-Package DynamicLINQ
我正在尝试构建一个包含Guids的where子句
我已经尝试了字符串"Id == @0"
。参数数组只是一个值为(Guid xxxx
)
object[]
。 var whereClauseSB = BuildLogicalKeyWhereClause2(entity, logicalKey); //build string
var parms = BuildParamArray(entity, logicalKey); // object[]
var whereLambda = Ofsi.Bos.Core.DynamicExpression.ParseLambda<T, bool>(whereClauseSB.ToString(),parms); //parse
在DynamicExpression中抛出异常。ParseLambda
操作符'=='与操作数类型'Guid'和'Guid'不兼容
- 我也尝试过GUID和String.(失败)
- 我尝试了和"Id = @0"(失败)。
- String == String工作,Int32== Int32但不Guid == Guid不
任何想法?
尝试在字符串中使用Equals
方法而不是==
操作符:
"Id.Equals(@0)"