2011-11-23 104 views
1

Hy!linq - 从对象列表中创建一个整数列表

我试图从日期(日期)列表中创建日期(整数)的列表。

我tryed做这个.....

Dim days As New List(Of Integer) 
days = From a In DATES 
       Where a.desc = "ferias" 
       Select Day(a.date) 

但是我得到一个错误,说其

不可能 类型的对象转换 “WhereSelectListIterar”'2日期,System.int32]在 system.collections.generic.list'1 [System.int32]

我怎样才能得到d的”整数天ATES“,这是一个日期列表?

Tks!

回答

0

首先,如果您打算覆盖此值,请不要将昏暗的日子当作新列表(整数)。接下来,如果你想要一个列表而不是可枚举的,使用ToList()扩展方法。

Dim days As List(Of Integer) = _ 
    (From a In DATES _ 
    Where a.desc = "ferias" _ 
    Select Day(a.date)).ToList() 
0

对Linq表达式的结果调用ToList

1

你会想要做这样的事情:

days = (From a In dates 
        Where a.desc= "ferias" 
        Select a.date.Day).ToList 

您需要.ToList结果。

1

转换它使用ToList为列出:

Dim days As New List(Of Integer) 
days = (From a In DATES 
       Where a.desc = "ferias" 
       Select Day(a.date)).ToList() 
1
Dim days as As List(Of Integer) = dates.ConvertAll(Of Integer)(Function(D As Date) D.Day)