Напишите программу для поиска автомобилей, выпущенных в течение определенного года.
класс Автомобиль уже указан для справки.
Программа класса содержит жестко запрограммированный список с информацией об автомобиле в атрибуте vehicleList.
a) Реализуйте метод 'getVehicleName'.
publi c stati c void getVehicleName (int fromYear, int toYear) // подпись метода
Этот метод должен отображать названия транспортных средств (из заданного списка), выпущенных между годами и годами (включая эти годы). ИСПОЛЬЗОВАНИЕ LINQ CONCEPT
b) Реализуйте метод 'Main'.
Получите год от года от пользователя. Передайте его методу getVehicleName.
ПРИМЕЧАНИЕ. НЕ НУЖНО вызывать метод getMyExpression в Main.
c) Реализуйте метод getMyExpression
publi c stati c Выражение getMyExpression (int fromYear, int toYear)
Этот фрагмент метода уже предоставлен для вас. ЭТОТ МЕТОД ДЛЯ ТЕСТИРОВАНИЯ ВАШЕГО ВЫРАЖЕНИЯ ЗАПРОСА LINQ ИЛИ РАСШИРЕНИЯ МЕТОДА LINQ. Поэтому заполните свое выражение запроса или расширение метода в предоставленном месте. ТОЛЬКО ЗАПРОС ВЫРАЖЕНИЯ ИЛИ ДОЛЖНЫ МЕТОДА. Больше ничего не нужно реализовывать в этом классе.
Я получаю ошибку - LinqApp1.Vehicle' does not contain a definition for
Где '.
Vehicle.cs
namespace LinqApp1
{
public class Vehicle
{
public String VehicleId{get; set; }
public String VehicleName{ get; set; }
public String Brand { get; set; }
public int ReleaseYear { get; set; }
public Vehicle(String vehicleId, String vehicleName, String brand,int releaseYear)
{
this.VehicleId = vehicleId;
this.VehicleName = vehicleName;
this.Brand = brand;
this.ReleaseYear = releaseYear;
}
}
}
Program.cs
namespace LinqApp1 //DO NOT CHANGE the namespace name
{
public class Program //DO NOT CHANGE the class name
{
/** DO NOT CHANGE this 'List' declaration with initialized values **/
public static List<Vehicle> vehicleList = new List<Vehicle>()
{
new Vehicle("HO345","CRV","Honda",2015),
new Vehicle("HY562","Creta","Hyundai",2017),
new Vehicle("RE198","Duster","Reanult",2014),
new Vehicle("MA623","Spacio","Suzuki",2014),
new Vehicle("TR498","Nexon","Tata",2015),
new Vehicle("TR981","Zest","Tata",2016),
new Vehicle("HO245","WRV","Honda",2018)
};
static void Main(string[] args) //DO NOT Change this 'Main' signature
{
int fromy,toy;
Console.Write("Enter From Year : ");
fromy = int.Parse(Console.ReadLine());
Console.Write("Enter To Year : ");
toy = int.Parse(Console.ReadLine());
getVehicleName(fromy,toy);
}
public static void getVehicleName(int fromYear, int toYear)
{
IEnumerable<int> L = from v in Vehicle
where(v.releaseYear >= fromYear && v.releaseYear <= toYear)
select v.VehicleName;
}
/** DO NOT CHANGE this ParameterExpression **/
public static ParameterExpression variableExpr = Expression.Variable(typeof(IEnumerable<Vehicle>), "sampleVar");
public static Expression getMyExpression(int fromYear, int toYear)
{
Expression assignExpr = Expression.Assign(variableExpr, Expression.Constant(vehicle.Where(v => v.releaseYear >= fromYear && v.releaseYear <= toYear.select(n => n.VehicleName))));
return assignExpr;
}
}
}