Condividi tramite


Percorso formativo - LINQ e le novità dei linguaggi .NET

Visual Studio 2008 porta con sé molte novità per gli sviluppatori, non solo nell' IDE ma anche e soprattutto per i linguaggi .NET. Il nuovo C# 3.0 e Visual Basic 9 evolvono offrendo costrutti che ci aiutano a semplificare il codice che scriviamo e allo stesso tempo offrono un modo nuovo di programmare. LINQ (Language INtegrated Query) è il risultato di questa evoluzione offrendo un framework con cui scrivere codice che accede a diverse sorgenti dati con una sintassi simile a quella usata con l'SQL. Le estensioni al linguaggio consentono di usare un facile modello di programmazione sia che si stia accedendo a collezioni di oggetti, a nodi XML o a dati relazionali. LINQ offre un modello di programmazione che si integra fortemente nei linguaggi .NET in modo "strongly typed" e senza rinunciare all'IntelliSense.

  <p> </p>
  <hr />
  <table border="0" cellpadding="0" cellspacing="0">
    <tr valign="top">
      <td colspan="5">
        <table border="0" cellpadding="0" cellspacing="0">
          <tbody>
            <tr valign="top">
              <td>
                <img alt="LINQ: Introduzione" height="55" src="https://msdn.microsoft.com/it-it/cc299390.1(it-it,MSDN.10).gif" width="55" />
              </td>
              <td>
                <p>
                  <strong>LINQ: Introduzione</strong>
                  <br />
                </p>
                <p>In questo primo Webcast vedremo alcune delle funzionalità offerte dal C# 3.0 e Visual Basic 9. Vedremo i primi esempi di codice e scopriremo come usare LINQ per accedere a collezioni di oggetti (LINQ to Objects), a strutture in XML (LINQ to XML) e dati relazionali con LINQ to DataSet e LINQ to SQL. Gli argomenti trattati saranno poi ripresi e affrontati in modo più esaustivo nei Webcast seguenti.<br /> Speaker: <em>Pietro Brambati , Developer Evangelist - Microsoft Italia</em></p>
                <table border="0" cellpadding="0" cellspacing="0">
                  <tbody>
                    <tr valign="top">
                      <td> </td>
                      <td>
                        <ul>
                          <li>
                            <a runat="server" href="https://www.microsoft.com/italy/beit/msdn.aspx?video=a5399f1e-24b7-4489-8aac-5a0a78ff9a72">Guarda la registrazione del Webcast</a>
                          </li>
                        </ul>
                      </td>
                    </tr>
                    <tr valign="top">
                      <td> </td>
                      <td>
                        <ul>
                          <li>Compila il modulo di feedback sul Webcast</li>
                        </ul>
                        <p> </p>
                      </td>
                    </tr>
                  </tbody>
                </table>

              </td>
            </tr>
          </tbody>
        </table>

        <table border="0" cellpadding="0" cellspacing="0">
          <tbody>
            <tr valign="top">
              <td>
                <img alt="LINQ - domande e risposte con Luca Bolognese" height="55" src="https://msdn.microsoft.com/it-it/cc299390.2(it-it,MSDN.10).gif" width="55" />
              </td>
              <td>
                <p>
                  <strong>LINQ - domande e risposte con Luca Bolognese</strong>
                  <br />
                </p>
                <p>Luca Bolognese è Lead Program Manager per il team del C# e del progetto LINQ a Redmond. In questo Webcast, Luca risponderà alle vostre domande in merito a LINQ. Il Webcast è la conclusione del percorso formativo su LINQ e vuole essere un utile momento per parlare di LINQ con una delle persone che meglio lo conosce. Luca risponderà alle vostre domande in Italiano.<br /> Speaker: <em>Luca Bolognese, Lead Program Manager - Microsoft Corporation</em></p>
                <table border="0" cellpadding="0" cellspacing="0">
                  <tbody>
                    <tr valign="top">
                      <td> </td>
                      <td>
                        <ul>
                          <li>
                            <a runat="server" href="https://www.microsoft.com/italy/beit/msdn.aspx?video=955d574a-8b56-49e6-9f37-244410f24d56">Guarda la registrazione del Webcast</a>
                          </li>
                        </ul>
                      </td>
                    </tr>
                    <tr valign="top">
                      <td> </td>
                      <td> </td>
                    </tr>
                  </tbody>
                </table>

              </td>
            </tr>
          </tbody>
        </table>

        <table border="0" cellpadding="0" cellspacing="0">
          <tbody>
            <tr valign="top">
              <td>
                <img alt="C# 3.0: Novità del linguaggio" height="55" src="https://msdn.microsoft.com/it-it/cc299390.3(it-it,MSDN.10).gif" width="55" />
              </td>
              <td>
                <p>
                  <strong>C# 3.0: Novità del linguaggio</strong>
                  <br />
                </p>
                <p>Questo Webcast illustra le nuove funzionalità di C# 3.0, quasi tutte importanti nel supporto di LINQ. Saranno trattati Local Type Inference, Lambda Expressions, Extension Methods, Object Initialization Expressions, Anonymous Types, Query Expressions e Partial Methods. Ogni funzionalità sarà illustrata con esempi di codice in Visual Studio 2008. Il Webcast è di livello introduttivo e va seguito anche da chi utilizzerà Visual Basic 9, perché nel Webcast successivo su Visual Basic i concetti presenti anche in C# 3.0 saranno trattati solo a livello di differenze sintattiche.<br /> Speaker: <em>Marco Russo, .NET Specialist, DevLeap</em></p>
              </td>
            </tr>
          </tbody>
        </table>

        <table border="0" cellpadding="0" cellspacing="0">
          <tbody>
            <tr valign="top">
              <td>
                <img alt="Visual Basic 9: Novità del linguaggio" height="55" src="https://msdn.microsoft.com/it-it/cc299390.4(it-it,MSDN.10).gif" width="55" />
              </td>
              <td>
                <p>
                  <strong>Visual Basic 9: Novità del linguaggio</strong>
                  <br />
                </p>
                <p>Questo Webcast introduce le nuove funzionalità di Visual Basic 9. Le funzionalità presenti anche in C# 3.0 sono presentate velocemente illustrando le principali differenze sintattiche (si consiglia di seguire anche il webcast su C# 3.0 per maggiori dettagli su tali funzionalità). La maggior parte del tempo è dedicata ad approfondire le funzionalità specifiche di Visual Basic 9: il supporto a XML e i relaxed delegates. Al termine vi sono alcune considerazioni su due funzionalità presenti in C# 3.0 e non in Visual Basic 9: la keyword yield e gli anonymous methods.<br /> Speaker: <em>Marco Russo, .NET Specialist, DevLeap</em></p>
              </td>
            </tr>
          </tbody>
        </table>

        <table border="0" cellpadding="0" cellspacing="0">
          <tbody>
            <tr valign="top">
              <td>
                <img alt="LINQ to Objects – Parte 1" height="55" src="https://msdn.microsoft.com/it-it/cc299390.5(it-it,MSDN.10).gif" width="55" />
              </td>
              <td>
                <p>
                  <strong>LINQ to Objects – Parte 1</strong>
                  <br />
                </p>
                <p>In questo Webcast sono approfonditi i costrutti sintattici delle query LINQ orientate alla ricerca su collezioni di oggetti in memoria (LINQ to Objects). In particolare sono illustrate le caratteristiche degli operatori di proiezione, restrizione, ordinamento, raggruppamento e join. Obiettivo di questo Webcast è apprendere le potenzialità della sintassi LINQ. Per una copertura completa dell’argomento è necessario seguire anche la Parte 2 dedicata allo stesso argomento. Per seguire il Webcast è necessario aver precedentemente visto il Webcast dedicato a “C# 3.0: novità del linguaggio”.<br /> Speaker: <em>Paolo Pialorsi, .NET Specialist, DevLeap</em></p>
              </td>
            </tr>
          </tbody>
        </table>

        <table border="0" cellpadding="0" cellspacing="0">
          <tbody>
            <tr valign="top">
              <td>
                <img alt="LINQ to Objects – Parte 2" height="55" src="https://msdn.microsoft.com/it-it/cc299390.6(it-it,MSDN.10).gif" width="55" />
              </td>
              <td>
                <p>
                  <strong>LINQ to Objects – Parte 2</strong>
                  <br />
                </p>
                <p>Si tratta della seconda e conclusiva parte del Webcast dedicato a LINQ to Objects e alla sintassi delle query LINQ. In questa seconda puntata si affronta la sintassi dei più comuni operatori di aggregazione, quantificazione, gestione di insiemi, partizionamento e gestione di singoli elementi. Per seguire questo Webcast è necessario aver precedentemente visto la Parte 1 e il Webcast dedicato a “C# 3.0: novità del linguaggio”.<br /> Speaker: <em>Paolo Pialorsi, .NET Specialist, DevLeap</em></p>
              </td>
            </tr>
          </tbody>
        </table>

        <table border="0" cellpadding="0" cellspacing="0">
          <tbody>
            <tr valign="top">
              <td>
                <img alt="LINQ to SQL" height="55" src="https://msdn.microsoft.com/it-it/cc299390.7(it-it,MSDN.10).gif" width="55" />
              </td>
              <td>
                <p>
                  <strong>LINQ to SQL</strong>
                  <br />
                </p>
                <p>Questo Webcast è quasi interamente realizzato scrivendo codice in Visual Studio sfruttando le capacità di LINQ to SQL per accedere a dati presenti su Microsoft SQL Server. Si parte dalla generazione di un’entità, che può essere definita “manualmente” o attraverso un designer integrato in Visual Studio 2008 che fa il reverse engineering di un database esistente. Tali entità possono essere usate in vari modi, anticipandone o differendone il caricamento sino al primo utilizzo. Un aspetto importante è la possibilità offerta da LINQ to SQL di vedere un modello relazionale attraverso un modello “gerarchico”, o meglio come un grafo di oggetti, con forti implicazioni sulle possibilità di navigazione disponibili. Chiude questa introduzione a LINQ to SQL una panoramica su come i dati possono essere modificati manipolando le entità che li rappresentano.<br /> Speaker: <em>Marco Russo, .NET Specialist, DevLeap</em></p>
              </td>
            </tr>
          </tbody>
        </table>

        <table border="0" cellpadding="0" cellspacing="0">
          <tbody>
            <tr valign="top">
              <td>
                <img alt="LINQ to XML" height="55" src="https://msdn.microsoft.com/it-it/cc299390.8(it-it,MSDN.10).gif" width="55" />
              </td>
              <td>
                <p>
                  <strong>LINQ to XML</strong>
                  <br />
                </p>
                <p>Questo Webcast affronta LINQ to XML come strumento per a consultazione, creazione, modifica e gestione di contenuti XML, sfruttando le nuove API di LINQ to XML. Inoltre si affrontano argomenti relativi alla ricerca di contenuti XML sfruttando apposite query LINQ to XML, così come la costruzione dinamica di XML partendo da query LINQ. Si trattano in particolare argomenti quali la costruzione funzionale di XML, i namespace XML, gli oggetti di tipo System.Xml.Linq.X*, gli XML Literal di Visual Basic 9 e gli extension method di LINQ to XML. Per una corretta comprensione del Webcast è necessario aver seguito i precedenti episodi dedicati a C# 3.0, Visual Basic 9 e LINQ to Objects.<br /> Speaker: <em>Paolo Pialorsi, .NET Specialist, DevLeap</em></p>
              </td>
            </tr>
          </tbody>
        </table>

        <table border="0" cellpadding="0" cellspacing="0">
          <tbody>
            <tr valign="top">
              <td>
                <img alt="LINQ e ASP.NET" height="55" src="https://msdn.microsoft.com/it-it/cc299390.9(it-it,MSDN.10).gif" width="55" />
              </td>
              <td>
                <p>
                  <strong>LINQ e ASP.NET</strong>
                  <br />
                </p>
                <p>Si tratta di un Webcast orientato a mostrare le novità dell’ambiente di sviluppo di Visual Studio 2008 nell’ambito delle soluzione web che sfruttino LINQ. Si inizia con il valutare rapidamente i nuovi controlli di ASP.NET 3.5 quali ListView e DataPager, per poi utilizzarli per eseguire data binding di dati provenienti da sorgenti interrogate tramite LINQ. In particolare si utilizza il nuovo controllo LinqDataSource così come query LINQ esplicite quali sorgenti di dati per il binding. Per una corretta comprensione è consigliata la visione dei precedenti Webcast dedicati a C# 3.0 e LINQ to SQL.<br /> Speaker: <em>Paolo Pialorsi, .NET Specialist, DevLeap</em></p>
              </td>
            </tr>
          </tbody>
        </table>

      </td>
      <td>
        <div></div>
      </td>
      <td>
        <div></div>
      </td>
      <td>
        <div></div>
      </td>
    </tr>
    <tr>
      <td> </td>
      <td>
        <div></div>
      </td>
      <td>
        <div></div>
      </td>
      <td>
        <div></div>
      </td>
      <td> </td>
      <td>
        <div></div>
      </td>
      <td>
        <div></div>
      </td>
      <td>
        <div></div>
      </td>
    </tr>
  </table>

  <div>
    <img alt="Inizio pagina" border="0" height="9" src="https://msdn.microsoft.com/it-it/cc299390.arrow_px_up(it-it,MSDN.10).gif" style="margin-right:5px" width="7" xmlns="http://www.w3.org/1999/xhtml" />Inizio pagina</div>
</td>
<td valign="top">
  <div class="RightRail">
    <h3>Materiale aggiuntivo per il percorso formativo</h3>
    <ul class="bulletedlist">
      <li>
        <a runat="server" CssClass="" ToolTip="Slide dei webcast" href="https://download.microsoft.com/download/c/6/f/c6f65644-171b-4290-8e7e-3dfbd96270ba/linqpercorsoformativoslides.zip">Slide dei Webcast</a>
        <br />
        <p>Scarica le slide utilizzate durante le varie sessioni del percorso formativo.</p>
        <ul>
          <li>
            <a runat="server" href="https://www.microsoft.com/downloads/details.aspx?displaylang=it&amp;familyid=048dc840-14e1-467d-8dca-19d2a8fd7485">Visualizzatore di PowerPoint 2007</a>
          </li>
        </ul>
      </li>
      <li>
        <a runat="server" CssClass="" ToolTip="Codice di esempio" href="https://download.microsoft.com/download/9/e/5/9e5c1daa-a6a7-483c-be83-90c766511933/linqperscorsoformativocodice.zip">Codice di esempio</a>
        <br />
        <p>Una collezione di codici che riprendono gli argomenti affrontati durante il percorso formativo. Questi esempi possono essere usati come punto di partenza per mettere in pratica quanto visto.</p>
      </li>
      <li>
        <a runat="server" CssClass="" ToolTip="Versione di valutazione di Visual Studio 2008 in italiano" href="">Versione di valutazione di Visual Studio 2008 in italiano</a>
        <br />
        <p>Scarica gratuitamente la versione di prova per 90 giorni più adatta alle tue esigenze. </p>
        <table>
          <tr valign="top">
            <td>
              <ul>
                <li>
                  <a runat="server" href="https://www.microsoft.com/downloads/details.aspx?displaylang=it&amp;familyid=83c3a1ec-ed72-4a79-8961-25635db0192b">Visual Studio 2008 Professional Edition</a>
                </li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <ul>
                <li>
                  <a runat="server" href="https://www.microsoft.com/downloads/details.aspx?displaylang=it&amp;familyid=d95598d7-aa6e-4f24-82e3-81570c5384cb">Visual Studio Team System 2008 Team Suite</a>
                </li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <ul>
                <li>
                  <a runat="server" href="https://www.microsoft.com/downloads/details.aspx?displaylang=it&amp;familyid=b0155166-b0a3-436e-ac95-37d7e39a440c">Visual Studio Team System 2008 Team Foundation Server</a>
                </li>
              </ul>
            </td>
          </tr>
          <tr valign="top">
            <td>
              <ul>
                <li>
                  <a runat="server" href="https://www.microsoft.com/downloads/details.aspx?displaylang=it&amp;familyid=572e1e71-ae6b-4f92-960d-544cabe62162">Visual Studio Team System 2008 Test Load Agent</a>
                </li>
              </ul>
            </td>
          </tr>
        </table>

      </li>
    </ul>
  </div>
  <div class="RightRail">
    <h3>Risorse correlate</h3>
    <ul class="bulletedlist">
      <li>
        <a runat="server" CssClass="" ToolTip="Il Blog di Pietro Brambati " href="https://blogs.msdn.com/pietrobr/">Il Blog di Pietro Brambati </a>
        <br />
      </li>
      <li>
        <a runat="server" CssClass="" ToolTip="Visual Studio 2008: informazioni di prodotto (in inglese)" href="https://msdn.microsoft.com/it-it/vs2008/products/default.aspx">Visual Studio 2008: informazioni di prodotto</a>
        <br />
      </li>
      <li>
        <a runat="server" CssClass="" ToolTip="Percorsi formativi per sviluppatori: l’elenco competo" href="cc299396(v=msdn.10).md">Percorsi formativi per sviluppatori: l’elenco competo</a>
        <br />
      </li>
    </ul>
  </div>
</td>