【发布时间】:2020-09-15 17:18:55
【问题描述】:
我在 ADF 中的“直到”活动中有两个查找。第一个查找 (BookList) 是一个类似于下面列出的 JSON 的书籍列表。
[
{
"BookID": 1,
"BookName": "Book A"
},
{
"BookID": 2,
"BookName": "Book B"
}
]
第二个查找是我想从下面列出的第一个列表 (ExcludedBooks) 中排除的书籍列表。
[
{
"BookID": 2,
"BookName": "Book B"
}
]
在这两个查找之后,我有一个过滤器活动,其项目是来自BookList 查找的值。我希望过滤条件基于 ExcludedBooks 值中未列出的 BookID 值,但我不确定如何根据 ADF 中的收集函数编写此条件。下面列出了我所拥有的那些不起作用。
@not(contains(activity('ExcludedBooks').output.value, item().BookID))
我意识到解决此问题的一种方法是遍历 ExcludedBooks 的每条记录并使用 SetVariable Activity 来构建 BookID 数组,这些 BookID 可以与集合函数 Contains() 一起使用,但由于某种原因 ADF 不允许嵌套活动组(Until 中的 ForEach)。
我也无法在“直到”活动之外设置排除书籍的列表,因为它会随着“直到”活动的每次迭代而改变。我还意识到嵌套组活动限制的解决方法是创建一个完全不同的管道,但这并不理想,并且在尝试返回结果时会产生不必要的复杂性。
是否有人对如何根据另一个查找的结果过滤查找结果有任何建议?
【问题讨论】: