Alessandro Del Sole's Blog

{ A programming space about Microsoft® .NET® }
posts - 1909, comments - 2047, trackbacks - 352

My Links

News

Your host

This is me! Questo spazio è dedicato a Microsoft® .NET®, di cui sono molto appassionato :-)

Cookie e Privacy

Disabilita cookie ShinyStat

Microsoft MVP

My MVP Profile

Microsoft Certified Professional

Microsoft Specialist

Xamarin Certified Mobile Developer

Il mio libro su VB 2015!

Pre-ordina il mio libro su VB 2015 Pre-ordina il mio libro "Visual Basic 2015 Unleashed". Clicca sulla copertina per informazioni!

Il mio libro su WPF 4.5.1!

Clicca sulla copertina per informazioni! E' uscito il mio libro "Programmare con WPF 4.5.1". Clicca sulla copertina per informazioni!

These postings are provided 'AS IS' for entertainment purposes only with absolutely no warranty expressed or implied and confer no rights.
If you're not an Italian user, please visit my English blog

Le vostre visite

I'm a VB!

Guarda la mia intervista a Seattle

Follow me on Twitter!

Altri spazi

GitHub
I miei progetti open-source su GitHub

Article Categories

Archives

Post Categories

Image Galleries

Privacy Policy

VB 2008 e il supporto a XML con LINQ

Come avrete letto in più sedi, la novità forse più importante di .NET Framework 3.5, che influenza tutti i linguaggi gestiti, è LINQ. Con questo post iniziamo una serie di articoletti brevi dedicati alle caratteristiche di LINQ e alle novità che esso introduce.

Tra le varie fantastiche cose che LINQ permette di fare, osserviamo come questo aggiunga a Visual Basic il supporto per il linguaggio XML in fase di scrittura del codice (LINQ to Xml). Considerate questo brevissimo snippet, che crea un elemento XML contenente i titoli di alcuni articoli che ho scritto per VB T&T:

        Dim linqSample = <Articoli>

                             <Articolo titolo="La mia prima applicazione per dispositivi mobili"/>

                             <Articolo titolo="Introduzione a Windows Workflow Foundation"/>

                             <Articolo titolo="Introduzione a Windows Communication Foundation"/>

                         </Articoli>

Balza subito agli occhi come sia possibile creare strutture di dati XML in modalità molto più semplice e visivamente più ordinata, sebbene lo stesso risultato si possa ottenere istanziando nel modo consueto oggetti XElement e XAttribute. Tra l'altro, in questo caso stiamo utilizzando anche la Local Type Inference, secondo cui il compilatore è in grado di assegnare automaticamente il tipo di dato all'oggetto dichiarato (linqSample è di tipo XElement, noi non lo abbiamo specificato, lo fa il compilatore).

Il codice XML sopra esposto può anche contenere delle variabili al posto di testo statico. Riscriviamo lo snippet come segue:

        Dim titoloCostante As String = "Introduzione a Windows Workflow Foundation"

 

        Dim linqSample = <Articoli>

                              <Articolo titolo="La mia prima applicazione per dispositivi mobili"/>

                              <Articolo titolo=<%= titoloCostante %><%= titoloCostante %>/>

                              <Articolo titolo="Introduzione a Windows Communication Foundation"/>

                          </Articoli>

Come vedete, utilizzando il tag <%=%> <%= %>è possibile specificare una variabile da assegnare come valore all'attributo desiderato, garantendo la caratteristica della dinamicità. Se aggiungete le due seguenti banali righe di codice:

        Console.WriteLine(linqSample)

        Console.ReadLine()

potrete osservare a video la rappresentazione XML dei dati di cui sopra, ma ovviamente le possibilità di manipolazione sono ben altre, molto potenti (come ad esempio l'accesso ai dati mediante query) e inizieremo a vederle nei prossimi post.

Alessandro

Print | posted on lunedì 3 marzo 2008 22:04 | Filed Under [ Visual Basic Visual Studio Express Editions LINQ ]

Powered by:
Powered By Subtext Powered By ASP.NET