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 *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>