Upload
andrea-angella
View
456
Download
2
Embed Size (px)
DESCRIPTION
"Microsoft .NET Framework tra presente e futuro", DotNetToscana http://www.dotnettoscana.org/net-presente-futuro.aspx
Citation preview
Microsoft .NET Framework tra presente e futuro
Andrea AngellaDott. in Ingegneria InformaticaEmail: [email protected]: http://blogs.ugidotnet.org/angellaa
Introduzione a LINQ
Rapida rivisitazione di C# 2.0
Nuove caratteristiche di C# 3.0
LINQ to Object
LINQ to SQL
Altre implementazioni di LINQ
Domande e risposte
2
3
C# 3.0 VB 9.0 Altri…
.NET Language Integrated Query
LINQ to Objects LINQ to SQL LINQ to Xml LINQ to X
Grafo di oggetti
DatabaseSQL Server
<university><studente /><studente />
</university>
Documento XML
?
4
5
Introduzione a LINQ
Rapida rivisitazione di C# 2.0
Nuove caratteristiche del C# 3.0
LINQ to Object
LINQ to SQL
Altre implementazioni di LINQ
Domande e risposte
6
TypeInference
7
8
AnonymousMethod
9
Introduzione a LINQ
Rapida rivisitazione del C# 2.0
Nuove caratteristiche di C# 3.0
LINQ to Object
LINQ to SQL
Altre implementazioni di LINQ
Domande e risposte
10
11
12
13
14
15
Lo sviluppatore non conosce il nome del tipo
generato
16
17
Cosa fà questo statement ?
18
19
Local TypeInference
ExtensionMethods Anonymous
Type
Lambda Expression
Object InitializationExpression
20
Introduzione a LINQ
Rapida rivisitazione di C# 2.0
Nuove caratteristiche del C# 3.0
LINQ to Object
LINQ to SQL
Altre implementazioni di LINQ
Domande e risposte
21
Extension Methodssu IEnumerable<T>
22
Proiezione: select
Restrizione: where
Ordinamento: orderby
Raggruppamento: group by
Di join: join
Insiemistici: Distinct, Union, Intersect, Except
Aggregazione: Count, Sum, Min, Max, Average, Aggregate
Generazione: Range, Repeat, Empty
Quantificazione: Any, All, Contains
Partizionamento: Take, TakeWhile, Skip, SkipWhile
Elemento: First, Last, Single, ElementAt, DefaultIfEmpty
Conversione: AsEnumerable, ToArray, ToList, ToDictionary, ToLookup, OfType, Cast
Supportati dalle Query Expression
23
Proiezione di una
collection
24
Operatori logici
SubQuery
25
Ordinamento multiplo
26
Campo di raggruppamento
27
28
Operatore di aggregazione
Operatori di partizionamento
29
Modifica della sorgente dati
30
Operatore di conversione
31
32
33
Introduzione a LINQ
Rapida rivisitazione di C# 2.0
Nuove caratteristiche del C# 3.0
LINQ to Object
LINQ to SQL
Altre implementazioni di LINQ
Domande e risposte
34
LINQ to SQL
Schema del databaseModello a oggetti
Mapping 1 a 1
35
36
Pensando in SQL (approccio relazionale)◦ Utilizzando operatori di join
Pensando in LINQ (approccio object oriented)◦ Navigando tra le entity sfruttando le relazioni
37
Inserimento
Modifica
Conferma le modifiche
38
Introduzione a LINQ
Rapida rivisitazione di C# 2.0
Nuove caratteristiche del C# 3.0
LINQ to Object
LINQ to SQL
Altre implementazioni di LINQ
Domande e risposte
39
Supportate da Microsoft◦ LINQ to Dataset◦ LINQ to XML◦ LINQ to Entities◦ Parallel LINQ
Supportate dalla community◦ LINQ to Amazon◦ LINQ to Flickr◦ LINQ to Google◦ LINQ to Active Directory◦ LINQ to Lucene◦ LINQ to Excel◦ LINQ to WMI◦ …
40
1. LINQ mi offre un modello uniforme per interrogare qualsiasi sorgente dati
2. LINQ mi permette di scrivere le query con un approccio dichiarativo e naturale
3. LINQ è completamente supportato da VisualStudio 2008 e questo aumenta in maniera eccezionale la mia produttività
4. LINQ to SQL mi offre la possibilità di pensare in modo object-oriented quando interagisto con il database relazione SQL Server
Percorso formativo“LINQ e le novità dei linguaggi .NET”◦ http://msdn.microsoft.com/it-it/vbasic/cc299390.aspx
LINQ Italia◦ http://www.linqitalia.com/
“Programming Microsoft LINQ”◦ Paolo Pialorsi e Marco Russo
◦ Disponibile anche in Italiano
41
Andrea AngellaDott. in Ingegneria InformaticaEmail: [email protected]: http://blogs.ugidotnet.org/angellaa