Предположим, у вас есть монго-документ с составным ключом, состоящим из двух полей:
doc_id и sec_id
В моей бизнес-логике они объединяются для создания "id", где:
id = doc_id-sec_id.
Мой запрос содержит эти два массива:
doc_ids = [1,2,3]
sec_ids = [111,222,333]
Они соответствуют документам с идентификаторами: 1-111,2-222, 3-333.
Я хочу передать эти два массива поисковому запросу в монго, чтобы поиск возвращал документ только в случае совпадения с id = "doc_ids [i] -sec_ids [i]".
например, я хочу три документа, перечисленных выше. Я не хочу документ с идентификатором 1-222 или 3-111 и т. Д.
Вот мое использование конструктора фильтров C # Mongo для выполнения этого запроса. Будет ли это мудрый запрос для достижения моей цели? (В частности, использование "В")
GetDocumentIdsFilter(IEnumerable<string> doc_ids, IEnumerable<string> sec_ids )
{
var filterBuilder = Builders<ViewedContent>.Filter;
return filterBuilder.And(
filterBuilder.In(x => x.doc_id, doc_ids),
filterBuilder.In(x => x.sec_id, sec_ids));
}