После просмотра MSDN мне все еще неясно, как мне сформировать правильный предикат для использования метода Find () в List с использованием переменной-члена T (где T - класс)
Например:
public class Car
{
public string Make;
public string Model;
public int Year;
}
{ // somewhere in my code
List<Car> carList = new List<Car>();
// ... code to add Cars ...
Car myCar = new Car();
// Find the first of each car made between 1980 and 2000
for (int x = 1980; x < 2000; x++)
{
myCar = carList.Find(byYear(x));
Console.Writeline(myCar.Make + myCar.Model);
}
}
Как должен выглядеть мой предикат byYear?
(Пример MSDN говорит только о списке динозавров и ищет только неизменное значение «saurus» - он не показывает, как передать значение в предикат ...)
РЕДАКТИРОВАТЬ: я использую VS2005 / .NET2.0, поэтому я не думаю, что лямбда-нотация мне доступна ...
РЕДАКТИРОВАТЬ 2: Удалено «1999» в примере, потому что я могу хотеть «Найти» программно на основе различных значений. Пример изменен на диапазон автомобилей с 1980 по 2000 год с использованием цикла for-do.