Sitecore 9.0.2, DEF 2.0.1
I have a pipeline that imports data and creates/updates items in a folder. Unfortunately, the data set that will be used is quite large, so we need to add these items to a bucket, instead.
When I change the item container to a bucket, however, it no longer finds existing items, presumably because the InProcItemModelRepository.GetQueryableForSearch()
method looks for direct children, instead of all descendants of the root item:
(decompiled code from Sitecore.DataExchange.Local.dll
):
// ...
if (settings.RootItemIds.Any<Guid>())
{
Expression<Func<FullTextSearchResultItem, bool>> expression1 = PredicateBuilder.True<FullTextSearchResultItem>();
foreach (Guid rootItemId in settings.RootItemIds)
{
ID d1 = new ID(rootItemId);
expression1 = expression1.Or<FullTextSearchResultItem>((FullTextSearchResultItem i) => i.Parent == d1);
}
queryable = queryable.Where<FullTextSearchResultItem>(expression1);
}
// ...
Does anyone know of a way to configure the pipeline step to look for all descendants instead of a child?