Mongodb, драйвер linq. Как построить Содержит переменную или операторы

Я использую драйвер Mongo LINQ для C #, прекрасно работает.

Сортировка множества свойств, но здесь проблема, которую я не могу решить, вероятно, проста.

var identifierList = new []{"10", "20", "30"};
var newList = list.Where(x => identifierList.Contains(x.Identifier));

This is NOT supported ... 

Так что я мог бы сделать что-то вроде:

 var newList = list.Where(x => x.Identifier == "10" || x.Identifier == "20" || x.Identifier == "30");

Но так как список является переменным ... как я могу построить выше? Или есть еще лучшие альтернативы?

list имеет типIQueryable<MyCustomClass>

Для информации ... это используется как фильтр множества свойств. В SQL у меня мог быть родитель - & gt; детские отношения. Но, поскольку я не могу выступать в роли родителя для основного идентификатора, мне нужно вынуть все идентификаторы и затем сконструировать его следующим образом.

Надеется, что это имеет смысл. При необходимости я объясню больше.

Ответы на вопрос(2)

Решение Вопроса

Чтобы ответить на мой собственный вопрос ... Драйвер Mongo Sharp LINQ имеет метод расширения, называемый «In». который делает именно то, что мне нужно.

Тем не менее, они реализовали это в 1.5, поэтому мы можем использовать старый способ, например:https://jira.mongodb.org/browse/CSHARP-462

 var list = new []{"10", "10"};

 search.Where(x => list.Contains(x.Id));

Но пакет версии 1.5 еще не включен в nuget.

Тем не менее, это должно работать с "In" расширение, которое становится особым сюрпризом для драйвера mongo-csharp.

 search.Where(x => x.In(list));
var identifierList = new []{"10", "20", "30"};
var newList = list.ToList().Where(x => identifierList.Contains(x.Identifier));

Вам просто нужно будет использовать List вместо Ienumerable (сделайте это с помощью .ToList ())

Если это не работает, пожалуйста, добавьте свой список ТИП

Ваш ответ на вопрос