Ну, для начала List<T>
имеет ли методы FindAll
и ConvertAll
- но более идиоматический, современный подход заключается вuse LINQ:
// Find all the people older than 30
var query1 = list.Where(person => person.Age > 30);
// Find each person's name
var query2 = list.Select(person => person.Name);
Для работы вам понадобится директива using в вашем файле:
using System.Linq;
Обратите внимание, что в них не используются строки для выражения предикатов и проектов -они используют делегатов, обычно создаваемых из лямбда-выражений, как указано выше.
Если лямбда-выражения и LINQ для вас новы, я бы посоветовал вам сначала получить книгу, описывающую LINQ, например LINQ в действии , Pro LINQ , C # 4 в двух словах или мой C # в глубине .Вы, конечно, можете изучать LINQ только из веб-учебников, но я думаю, что это такая важная технология, что стоит потратить время на ее тщательное изучение.