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.

386INDEXpatterns 131, 136for comparison 135paus<strong>in</strong>g, apparent effect <strong>in</strong> iterators 167PDC. See Professional Developers Conferencepeek 100performance 48, 111, 149, 190, 265–266, 291, 341improvements due to generics 65of value types 51permissions 203persistence layer 334personal preference for conditional operator 129personality 214philosophy of nullability 112photocopy<strong>in</strong>g, comparison with value types 49p<strong>in</strong>n<strong>in</strong>g 201pipel<strong>in</strong>es 266placeholders, type parameters 68PLINQ. See Parallel LINQ (PLINQ)Po<strong>in</strong>t, as reference type or value type 50po<strong>in</strong>ters 199pollution of classes with methods fordelegates 145Pop 100portable 19positional parameters 217Postgres 346pragma directives 197, 199Predicate 97, 147, 236predicates 97, 291preprocess<strong>in</strong>g query expressions 276, 284,286, 290PreserveOrder<strong>in</strong>g 350primary keys 300primitive types 199private access modifier 193private variables, back<strong>in</strong>g properties 209Process 222ProcessStartInfo 222producer/consumer pattern 101production assemblies 202productivity 214, 273Professional Developers Conference 19, 21project management 269project plan 175projection expressions 287, 307projection <strong>in</strong>itializers 227, 269projection. See Standard Query Operators,projectionprojections 266, 283, 300, 303, 342, 356properties 57, 108, 212, 215, 340anonymous types 226automatic implementation 7automatically implemented. See automaticallyimplemented propertiescomparison with events 40differ<strong>in</strong>g access for getter/setter 6forced equality of access <strong>in</strong> <strong>C#</strong> 1 6<strong>in</strong> value types 51separate access modifiers 192Properties w<strong>in</strong>dow 197property descriptors 238property evaluations <strong>in</strong> expression trees 243provability 358pseudo-code 306pseudo-synchronous code 178public key 203token 203public variables 209Push 100Python 48Qqualified namespace aliases 194quantifiers. See Standard Query Operators,quantifiersquery cont<strong>in</strong>uations 310query expression pattern 285query expressions 14, 275–314consistency across data sources 337cont<strong>in</strong>uations 310embedded with<strong>in</strong> XElement constructors 340from clauses 283, 303, 367functional style 354jo<strong>in</strong> ... <strong>in</strong>to clauses 301let clauses 295, 321LINQ to SQL 325nested 341nest<strong>in</strong>g 300orderby clauses 292Queryable extension methods 330range variables. See range variablesreadability 357select clauses 283, 287, 292, 300, 303translations 284transparent identifiers. See transparentidentifierstype <strong>in</strong>ference 246where clauses 290, 321, 332, 368query parameters 320query translation 318Queryable 263, 266, 326, 328, 330, 333, 362query<strong>in</strong>gloop<strong>in</strong>g <strong>in</strong> <strong>C#</strong> 1 11separat<strong>in</strong>g concerns <strong>in</strong> <strong>C#</strong> 2 11QueryOptions 350QueryProvider 326Queue 100quirks <strong>in</strong> iterator block implementation 172Licensed to Rhona Hadida

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

Saved successfully!

Ooh no, something went wrong!