Как фильтровать Directory.EnumerateFiles по нескольким критериям?C#

Место общения программистов C#
Anonymous
Как фильтровать Directory.EnumerateFiles по нескольким критериям?

Сообщение Anonymous »

У меня есть следующий код:

Код: Выделить всё

List result = new List();

foreach (string file in Directory.EnumerateFiles(path,"*.*",
SearchOption.AllDirectories)
.Where(s => s.EndsWith(".mp3") || s.EndsWith(".wma")))
{
result.Add(file);
}
Он отлично работает и делает то, что мне нужно. За исключением одной мелочи. Я хотел бы найти лучший способ фильтрации по нескольким расширениям. Я хотел бы использовать массив строк с такими фильтрами:

Код: Выделить всё

string[] extensions = { "*.mp3", "*.wma", "*.mp4", "*.wav" };
Каков наиболее эффективный способ сделать это с помощью NET Framework 4.0/LINQ? Есть предложения?

Буду признателен за любую помощь, поскольку время от времени программирую :-)

Подробнее здесь: https://stackoverflow.com/questions/375 ... e-criteria

Вернуться в «C#»