我是RavenDb的新手。我正在研究RavenDb的数据订阅。我有一种情况,当属性具有值列表中的值时,我想让订阅触发。如果该属性具有允许值列表中的任何值,则RavenDb应该通知我的事件处理程序。
例如,我有一个名为Event的属性,如果它具有[1,2,3,4,5]中的任何值,我希望订阅触发。
在SubscriptionCriteria中,您可以指定PropertiesToMatch,它是一个Dictionary,但它与AND条件类似。它要求文档必须具有所有这些值。是否有办法使RavenDb数据订阅具有OR条件。 对我来说,使用PropertieNotMatch并排除除期望值之外的所有其他值也不可行,因为这些值不是来自静态列表。 任何帮助将不胜感激。
答案 0 :(得分:1)
使用RavenDB 4.0,您可以使用 JavaScript过滤来创建订阅。
请参见示例,并在以下位置阅读复杂条件订阅:
https://github.com/ravendb/book/blob/v4.0/Ch05/Ch05.md#complex-conditionals