【问题标题】:Compare two properties of the same entity in Where clause in RavenDb在 RavenDb 的 Where 子句中比较同一实体的两个属性
【发布时间】:2014-11-16 20:17:49
【问题描述】:

我在 RavenDb 商店有以下先验的简单查询:

return _session
   .Query<StockKeepingUnit>()
   .Where(x => x.QuantityInStock < x.OrderLevel)
   .ToList()
   .GroupBy(x => x.BrandName);

RavenDb 在 Where 子句中抛出异常:Could not understand expression: .Where(x =&gt; (x.QuantityInStock &lt; x.OrderLevel))

我了解问题在于我无法查询比较同一实体上的属性,并在 where “解决”问题之前调用 .ToList(),但效率极低。

执行此查询的正确方法是什么?

【问题讨论】:

    标签: linq ravendb


    【解决方案1】:

    您可以在索引中执行此操作。这允许您在索引时计算一次,然后在查询时,我们可以只扫描索引。

    【讨论】:

    • 谢谢@Ayende,但你能用代码示例说明一下吗?
    猜你喜欢
    • 2012-08-06
    • 1970-01-01
    • 2021-10-09
    • 2016-05-30
    • 2014-12-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-12-10
    相关资源
    最近更新 更多