LINQ-запрос для запроса списка с элементами массива - PullRequest
1 голос
/ 24 ноября 2010

Я пытаюсь запросить список с помощью LINQ.

Оператор запроса содержит записи, которые должны соответствовать элементам из массива.

Другими словами получить записи из SourceList, которые соответствуют любомуэлементы из массива элементов.Пример:

private List<string> GetSearchResult(List<string> SourceList,
    string name, string[] items)
{
     IEnumerable<string> QueryList = SourceList.Where
         (entry => enrty.name == name && entry.id == <any item from items>)
}

Я думал о создании цикла запроса строки через массив элементов.Я хотел знать, есть ли эффективный способ сделать это.

Ответы [ 3 ]

4 голосов
/ 24 ноября 2010
private List<string> GetSearchResult(List<string> SourceList,
    string name, string[] items)
{
     return SourceList.Where(entry => entry.name == name 
         && items.Contains(entry.id))
}
2 голосов
/ 24 ноября 2010

А как же:

private List<string> GetSearchResult(List<string> SourceList,string name, string[] items)
{
     List<string> QueryList = SourceList.Where
                     (entry => enrty.name == name && items.Any(m => m == entry.id.ToString()))
}
1 голос
/ 24 ноября 2010
private List<string> GetSearchResult(List<string> SourceList,string name, string[] items)
{
     return SourceList.Where(entry => entry.name == name && items.Contains(entry.id)).ToList();
}

Это должно сделать это.

...