List<DateTime> in Lambda

本文关键字:in Lambda gt DateTime List lt | 更新日期: 2023-09-27 18:09:13

我试图使用Lambda表达式列出所有日期。我有一个列表中的日期,但我想使用ForEach显示,这是我的代码

List<DateTime> yom = new List<DateTime>();
yom = InsuranceQuotations
  .OrderBy(x => x.mYear)
  .Select( x => x.mYear ?? DateTime.ParseExact("00/00/0000", "MM/dd/yyyy", provider))
  .ToList();
//error here!
var bday = Convert.ToDateTime(yom);
DateTime today = DateTime.Today;
int age = today.Year - bday.Year;
if (bday > today.AddYears(-age)) age--;
AgeOfVehicles = Convert.ToString(age);

错误提示

无法强制转换类型为'System. collections . generic . list '的对象。

List<DateTime> in Lambda

您正在尝试将日期集合转换为单个日期对象,这确实失败了。

您应该从集合中选择一个日期-可能是.First()或使用OrderBy(...),然后选择第一个。注意,结果已经是类型DateTime,您不需要转换。

类似:

var bday = yom.OrderBy(x=>x).First();