Trovato il tempo per installare la beta 1 di Visual Studio "Orcas" mi sono concesso 5 minuti per effettuare qualche (piccolo)esperimento con "LINQ" (per fortuna per WPF e WCF ho utilizzato le estensioni di VS2005
e non ho aspettato così tanto :-) ),ecco il codice
Dim lPersone As New Persone
Dim arrNomi() As String = New String() { _
"Pietro", "Giovanni", "Paolo", "Bottoni", "Alessandro", "Nicola", "Filippo", _
"Maria", "Stefano", "Luigi", "Pierluigi"}
Dim nomi As IEnumerable = From s As String In arrNomi Where s.StartsWith("Pi") Order By s Ascending
For Each nome As String In nomi
lstStrings.Items.Add(nome)
Next
lPersone.Add(New Persona With {.Nome = "Pietro", .Cognome = "Libro"})
lPersone.Add(New Persona With {.Nome = "Eleonora", .Cognome = "x"})
lPersone.Add(New Persona With {.Nome = "Pinco", .Cognome = "Pallino"})
lPersone.Add(New Persona With {.Nome = "Tizio", .Cognome = "Caio"})
lPersone.Add(New Persona With {.Nome = "Paolo", .Cognome = "Lino"})
lPersone.Add(New Persona With {.Nome = "Paolo", .Cognome = "Dell'Angelo"})
Dim persone1 As IEnumerable(Of Persona) = From per As Persona In lPersone _
Where per.Nome.StartsWith("P") And per.Cognome.StartsWith("L") _
Order By per.Cognome
Dim persone2 As IEnumerable = From per As Persona In lPersone _
Where per.Nome.StartsWith("P") And per.Cognome.StartsWith("L") _
Select new = per.Nome & " " & per.Cognome
For Each p In persone2
lstPersone.Items.Add(p.ToString)
Next