首页 > 解决方案 > C# linq 和表达式

问题描述

我是 c# 的新手,我在理解给定的问题陈述时遇到了问题。问题陈述:编写一个程序来查找特定年份之间发布的车辆。

  1. 类 Vehicle 已经给出供您参考。

  2. 类 Program 在“vehicleList”属性中包含一个带有车辆信息的硬编码列表。

a) 实现方法“getVehicleName”。

public static void getVehicleName(int fromYear, int toYear) //方法签名

此方法必须显示在 fromYear 和 toYear(包括这些年份)之间发布的车辆名称(来自给定列表)。使用 LINQ 概念

b) 实现方法'Main'。

从用户那里获取年份和年份。将其传递给“getVehicleName”方法。

注意:不需要在 Main 中调用“getMyExpression”方法。

c) 实现方法“getMyExpression”

公共静态表达式 getMyExpression(int fromYear, int toYear)

此方法片段已经为您提供。此方法用于测试您的 LINQ 查询表达式或 LINQ 方法扩展。因此,在提供的空间持有者中填写您的查询表达式或方法扩展。只有查询表达式或方法扩展。在这个类中不需要实现更多的东西。

在此处输入图像描述 在此处输入图像描述

标签: c#linq

解决方案


看来你快到了:

from v in vehicle 
where v.ReleaseYear >= fromYear && v.ReleaseYear <= toYear 
select v.VehicleName

或者对方法链做同样的事情

vehicle.Where(v => v.ReleaseYear >= fromYear && v.ReleaseYear <= toYear)
.Select(n => n.VehicleName)

推荐阅读