gpt4 book ai didi

.net - Realm dotnet - 二元运算符 'Equal' 的 rhs 应该是常量或闭包变量表达式

转载 作者:行者123 更新时间:2023-12-03 17:49:23 28 4
gpt4 key购买 nike

您好,刚开始使用 Realm dotnet

当我执行一个简单的查询时

var results = realm.All<MyRealmType>().Where(x => x.Property == otherVariable.Property);

因此,在 Where 子句中,我比较了两个字符串以从 Realm 检索我需要的数据。

我收到以下错误
{System.NotSupportedException: The rhs of the binary operator 'Equal' should be a constant or closure variable expression
at Realms.RealmResultsVisitor.VisitBinary (System.Linq.Expressions.BinaryExpression b) [0x000cb] in <filename unknown>:0
at Realms.ExpressionVisitor.Visit (System.Linq.Expressions.Expression exp) [0x000d2] in <filename unknown>:0
at Realms.RealmResultsVisitor.VisitMethodCall (System.Linq.Expressions.MethodCallExpression m) [0x0006a] in <filename unknown>:0
at Realms.ExpressionVisitor.Visit (System.Linq.Expressions.Expression exp) [0x000ec] in <filename unknown>:0
at Realms.RealmResults`1[T].CreateResultsHandle () [0x00037] in <filename unknown>:0
at Realms.RealmResults`1[T].get_ResultsHandle () [0x0000d] in <filename unknown>:0
at Realms.RealmResults`1[T].GetEnumerator () [0x00000] in <filename unknown>:0
at System.Collections.Generic.List`1[T]..ctor (IEnumerable`1 collection) <0x1001aa7e0 + 0x001df> in <filename unknown>:0
at System.Linq.Enumerable.ToList[TSource] (IEnumerable`1 source) <0x100659e70 + 0x0004b> in <filename unknown>:0
at MyNamespace.MyMethod (System.Collections.Generic.List`1 myListList) [0x000b0] in C:\PathToMyFile\MyFile.cs:140 } System.NotSupportedException

我不确定这意味着什么。这是否意味着我的 Where 子句只能使用硬编码的字符串或整数,如下例所示?
var results = realm.All<MyRealmType>().Where(x => x.Property == "stringToCompare");

如果是这样,这似乎非常有限。有谁知道如何解决这个问题。

提前致谢。

最佳答案

Will 提供的答案确实有效,例如您必须将查询词复制到一个单独的变量中

var queryTerm = otherVariable.Property;
var results = realm.All<MyRealmType>().Where(x => x.Property == queryTerm);

也许来自 Realm 的人可以解释为什么会这样,以及将来是否会修复。我怀疑这与织布工有关。只是一个猜测。

再次感谢威尔

关于.net - Realm dotnet - 二元运算符 'Equal' 的 rhs 应该是常量或闭包变量表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37437550/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com