带有Or条件的RavenDb数据订阅PropertyMatch

时间:2019-02-20 12:34:47

标签: ravendb

我是RavenDb的新手。我正在研究RavenDb的数据订阅。我有一种情况,当属性具有值列表中的值时,我想让订阅触发。如果该属性具有允许值列表中的任何值,则RavenDb应该通知我的事件处理程序。

  

例如,我有一个名为Event的属性,如果它具有[1,2,3,4,5]中的任何值,我希望订阅触发。

在SubscriptionCriteria中,您可以指定PropertiesToMatch,它是一个Dictionary,但它与AND条件类似。它要求文档必须具有所有这些值。是否有办法使RavenDb数据订阅具有OR条件。 对我来说,使用PropertieNotMatch并排除除期望值之外的所有其他值也不可行,因为这些值不是来自静态列表。 任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

使用RavenDB 4.0,您可以使用 JavaScript过滤来创建订阅。

请参见示例,并在以下位置阅读复杂条件订阅

https://github.com/ravendb/book/blob/v4.0/Ch05/Ch05.md#complex-conditionals