13.07.2015 Views

C# in Depth

C# in Depth

C# in Depth

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

382INDEXlambda expressions (cont<strong>in</strong>ued)<strong>in</strong> fluent <strong>in</strong>terfaces 271readability 356role <strong>in</strong> LINQ 325second phase of type <strong>in</strong>ference 249simplicity 12use when filter<strong>in</strong>g 265Lambda method of Expression class 240LambdaExpression 240, 362language changes 208language designers 113, 128, 136, 183, 204, 253Language INtegrated Query (LINQ) 14, 21,56–57, 288–352<strong>C#</strong> 2 as stepp<strong>in</strong>g stone 160–161core concepts 275–281deferred execution 279functional style 354jo<strong>in</strong>s 297Standard Query Operators. See Standard QueryOperatorstype <strong>in</strong>ference 251use of anonymous types 224use of expression trees 239, 244use of extension methods 256, 263, 265use of lambda expressions 231, 235use of projection <strong>in</strong>itializers 226language specificationcollection <strong>in</strong>itializers 220embedded objects 218extended type term<strong>in</strong>ology 258generics 85iterator blocks 172method group conversions 141overload resolution 251pragmas 197query expression pattern 285transparent identifiers 295, 297type <strong>in</strong>ference 248language-lawyer 80languagesadd<strong>in</strong>g functionality on nullable types 119different behavior for nullable types 128last <strong>in</strong> first out 100Last. See Standard Query Operators, LastLastOrDefault. See Standard Query Operators,LastOrDefaultlaz<strong>in</strong>ess 214lazy code generation 88lazy load<strong>in</strong>g 325, 337LDAP. See Lightweight Directory Access Protocolleaf nodes 240leaky abstraction 346learn<strong>in</strong>g 358left outer jo<strong>in</strong>s 301, 323Length 295LessThan 239let clauses. See query expressions, let clausesLibraries 25library changes 208library design 81lifetime of captured variables 154LIFO last <strong>in</strong> first out 100lifted conversions 124lifted operators 125, 128Lightn<strong>in</strong>g 19Lightweight Directory Access Protocol 347limitations of generics 102l<strong>in</strong>e breaks 146L<strong>in</strong>kedList 101LINQ <strong>in</strong> Action 18, 315, 344LINQ providers 244, 276–277, 281, 292,314, 333, 344LINQ. See Language INtegraged Query (LINQ)LINQ to Active Directory 347LINQ to Amazon 18, 344LINQ to DataSet 315, 334–338LINQ to Entities 348LINQ to NHibernate 345LINQ to Objects 275–313lambda expressions 244us<strong>in</strong>g with LINQ to DataSet 333–334, 337us<strong>in</strong>g with LINQ to XML 343LINQ to SharePo<strong>in</strong>t 347LINQ to SQL 17, 22, 314–326compared with Entity Framework 348debug visualizer 321implicit jo<strong>in</strong>s 323<strong>in</strong>itial population 318–319jo<strong>in</strong>s 322model creation 315–318queries 319–324updat<strong>in</strong>g data 324–325use of expression trees 244use of IQueryable 330LINQ to XML 16, 315, 338–344LINQ. See Language INtegraged Query (LINQ)Lippert, Eric 106Listcollection <strong>in</strong>itializers 219comparison with ArrayList 88, 96ConvertAll 71, 267, 277Enumerable.ToList 360F<strong>in</strong>dAll 153ForEach 146lambda expressions 235–236unstable sort 369use of delegates <strong>in</strong> .NET 2.0 160, 356Licensed to Rhona Hadida

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!