VB11 Que hay de nuevo… Viejo? #2

Otra de las nuevas para VB11 es la posibilidad de combinar Lambdas e Iteradores 🙂 me encanta la dulzura de las expresiones en VB y encima incrustando XML en el editor… no todos los lenguajes pueden alardear de ellos 😉 jajajajaja.

Llevamos tiempo hablando de expresiones Lambda, y a la mayoría nos cuesta adoptar de forma natural la escritura de la mismas dentro de nuestros escenarios habituales.

El siguiente ejemplo, intenta introducir y dar coherencia a su uso, poniendo en acento en las extensiones de unión ‘Yield’ para combinar el contenido con el cuerpo de literales XML.

No olvideis el ‘Imports System.IO.Directory’ para poder llamar a la funcion ‘EnumerateFiles’.

    Dim myExplorer As New WebBrowser
    Dim myImageWall As
XElement
    Me
.Controls.Add(myExplorer)
    myImageWall =
            <html
>
                  <body
>
                         <%= Iterator Function
()
                                       For Each filename In EnumerateFiles(“C:\Users\PepLluis\Pictures”, “*.jpg”
)
                                             Yield <img src=<%= filename %>></img
>
                                       Next
                                  End Function.Invoke()
%>
                  </body
>
             </html
>
    myExplorer.DocumentText = myImageWall.ToString

Para los que lo ven todo simple es tan sencillo como incrustar sentencias y expresiones!

Espero que os guste.
PepLluis,

Leave a Reply

Your email address will not be published. Required fields are marked *