di: Giuseppe Marchi 12 Marzo 2008
Linq to SQL è sicuramente la più importante delle implementazioni di Linq inserite nella nuova versione del .NET Framework; rappresenta uno strumento completo e semplice, per lavorare con database SQL Server. Possiamo operare sulla base di dati utilizzando gli oggetti del database sotto forma di classi.
Linq to SQL è un vero e proprio ORM, che permette quindi di mappare gli oggetti di un database SQL Server in classi .NET, facilitando anche la costruzione del domain model di applicazioni Web e client.
Linq to SQL si rivela quindi lo strumento ideale per la creazione dell'architettura di base di applicazioni .NET basate sulla versione 3.5 del .NET Framework. Questo perché esso si occupa sia del modello ad oggetti dell'applicazione, ovvero dell'interscambio di dati tra i livelli concettuali in cui sono solitamente divise le applicazioni, e dei meccanismi di persistenza delle informazioni.
A supporto di questa nuova tecnologia, Visual Studio 2008 mette in campo l'Object-Relational Designer, che consente di effettuare il mapping tra applicazione e database, tramite semplici operazioni visuali come il drag & drop. Gli schemi realizzati sono poi memorizzati con estensione .dbml.
Come abbiamo già accennato Linq to SQL mette in campo due tipologie principali di funzionalità:
Il mapping offerto da Linq to SQL, presenta delle relazioni 1:1 tra tabelle della base di dati e classi che andranno poi a far parte del domain model dell'applicazione. In realtà il mapping "si avvicina molto" al pattern 1 a 1, poiché possiamo arricchirlo con associazioni, collezioni e meccanismi di ereditarietà basati sulla strategia a Single Table Hierarchy.
Le classi generate da questa operazione di mapping, sono le cosiddette entity, che possono essere descritte appunto come entità logiche che rappresentano le informazioni che dovranno poi essere gestite dai vari livelli concettuali in cui sono divise le applicazioni multilivello.
Queste entità sono gestite dal runtime di Linq to SQL, che invece si occupa della connessione fisica tra applicazione e base di dati. Il che ci permette di effettuare operazioni sul database, secondo il modello di programmazione ad oggetti, senza dover specificare alcuna riga di codice T-SQL, in quanto è proprio il runtime stesso che provvede alla conversione delle nostre operazioni in costrutti sintattici propri del linguaggio con cui solitamente accediamo alle informazioni poste nella base di dati.
Guida Windows Azure Code SnippetsLe migliori pratiche per far girare le applicazioni "in the cloud",... |
Guida ASP.NET MVC Best PracticesUn workflow dettagliato e ricco di suggerimenti pratici per... |
Guida ASP.NET Starter KitUn modo semplice per imparare ad utilizzare le tecnologie Microsoft... |
Ogni giovedì, direttamente nella tua e-mail: articoli, guide, tutorial e script ASP, ASP.Net, SQL server e IIS.
Iscriviti alla newsletter
|
|
Amministratore di Reti Windows Server 200820 Febbraio 2012 a Milano |
|
Nessun corso previsto |