9. VB 9.0 / C# 3.0 Innovations ! Query expressions Dim contacts = From c In customers Where c.State= "WA" Select New With { Name = c.Name, _ Phone = c.Phone } Nullable Value Type Expression Trees Local Variable Type Inference Deep XML Support Lambda Expressions Dim contacts = customers _ .Where(Function(c) c.State = "WA") _ .Select(Function(c) New With { Name = c.Name, _ Phone = c.Phone }) Partial Methods Extension Methods Anonymous Types Objects Initializers
10. VB 9.0 / C# 3.0 Innovations ! Query expressions var contacts = from c in customers where c.State == "WA" select new { c.Name, c.Phone }; Expression Trees Local Variable Type Inference Lambda Expressions Nullable Value Type var contacts = customers .Where(c => c.State == "WA") .Select(c => new { c.Name, c.Phone }); Partial Methods Extension Methods Anonymous Types Objects Initializers
11. LINQ : Architecture Others… VB C# .NET Language Integrated Query (LINQ) Sources de données LINQ Linqsur des sources ADO.NET LINQ To XML LINQ To Entities LINQ To SQL LINQ To Datasets LINQ To Objects Provider <book> <title/> <author/> <price/> </book> XML Relationnal Objets