C# 3.0 e LINQ

632 views
556 views

Published on

"Microsoft .NET Framework tra presente e futuro", DotNetToscana
http://www.dotnettoscana.org/net-presente-futuro.aspx

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
632
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
39
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

C# 3.0 e LINQ

  1. 1. Microsoft .NET Framework tra presente e futuro Andrea Angella Dott. in Ingegneria Informatica Email: andrea.angella@dotnettoscana.org Blog: http://blogs.ugidotnet.org/angellaa
  2. 2.  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. 3. C# 3.0 VB 9.0 Altri… .NET Language Integrated QueryLINQ to Objects LINQ to SQL LINQ to Xml LINQ to X <university> ? <studente /> <studente /> </university> Grafo di Database Documento oggetti SQL Server XML 3
  4. 4. 4
  5. 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 5
  6. 6. TypeInference 6
  7. 7. 7
  8. 8. Anonymous Method 8
  9. 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 9
  10. 10. 10
  11. 11. 11
  12. 12. 12
  13. 13. 13
  14. 14. 14
  15. 15. Lo sviluppatorenon conosce il nome del tipo generato 15
  16. 16. 16
  17. 17. Cosa fà questo statement ? 17
  18. 18. 18
  19. 19. Lambda ExpressionLocal Type Inference Extension Object Methods Anonymous Initialization Type Expression 19
  20. 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 20
  21. 21. Extension Methodssu IEnumerable<T> 21
  22. 22.  Proiezione: select Restrizione: where Ordinamento: orderby Supportati dalle Query Expression 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 22
  23. 23. Proiezione di unacollection 23
  24. 24. Operatori logici SubQuery 24
  25. 25. Ordinamento multiplo 25
  26. 26. Campo diraggruppamento 26
  27. 27. 27
  28. 28. Operatore diaggregazione Operatori di partizionamento 28
  29. 29. Modifica dellasorgente dati 29
  30. 30. Operatore diconversione 30
  31. 31. 31
  32. 32. 32
  33. 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 33
  34. 34. LINQ to SQL Mapping 1 a 1Modello a oggetti Schema del database 34
  35. 35. 35
  36. 36.  Pensando in SQL (approccio relazionale) ◦ Utilizzando operatori di join Pensando in LINQ (approccio object oriented) ◦ Navigando tra le entity sfruttando le relazioni 36
  37. 37. Inserimento ModificaConferma le modifiche 37
  38. 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 38
  39. 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 ◦ … 39
  40. 40. 1. LINQ mi offre un modello uniforme per interrogare qualsiasi sorgente dati2. LINQ mi permette di scrivere le query con un approccio dichiarativo e naturale3. LINQ è completamente supportato da Visual Studio 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 40
  41. 41.  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
  42. 42. Andrea AngellaDott. in Ingegneria InformaticaEmail: andrea.angella@dotnettoscana.orgBlog: http://blogs.ugidotnet.org/angellaa

×