L

L0, L1, L2 caches, DLR
Lambda2nd
lambda calculus
lambda expressions2nd3rd4th5th6th7th
  caching
  common uses in extension methods
  converting to delegates
  converting to expression trees
  dynamic typing
  event handlers
  implicitly typed parameters2nd
  inferring parameter and return types
  restrictions when converting to expression trees
  static checking
  timing of checking the body
  type inference
lambda.
    See lambda expression.
LambdaExpression
Langer, Angelika
language complexity
language design
language designers2nd3rd4th
Language Integrated Query
language integration
language specification2nd3rd4th5th
  iterators
  lack of guarantees of memory layout
  object initializer terminology
  query continuations
  query expressions
  transparent identifiers
  type inference
  ubiquity of generics
languages
  additional functionality for nullable types
  behavior with nullable types
  incorporating closures
Last
  LinkedList<T>
layout of code, object initializers
lazy evaluation2nd
Lazy<T>
LDAP
leaf expressions, expression trees
learning
left outer joins
  generated SQL
  simulating with group joins
left sequence
legacy contracts2nd
let
  contextual keyword
  LINQ to SQL
libraries2nd3rd4th5th
  DLR
  duck typing
  generics
licensing
lifetime management
lifetime, captured variables
LIFO
lifted conversions
lifted operators
limitations
  C# 1 type system
  generics
line breaks
line count, bad measure of complexity
LineReader
lines, iterating over a file
LinkedList
LinkedListNode
linking, Primary Interop Assemblies
LINQ2nd3rd4th5th6th7th.
    See also Language Integrated Query.
  anonymous types
  data model
  dynamic code
  key enabling aspects
  query styles2nd
  standard query operators
  third party providers
  without query expressions
LINQ providers, building your own
LINQ to Entities
LINQ to Objects2nd3rd4th5th6th7th
  covariance in C# 4
  execution path
  extended in System.Interactive
  extending
LINQ to Rx
LINQ to SQL2nd3rd4th
  DataContext
  execution path
  queries
LINQ to XML2nd3rd
  declarative construction
  design decisions
LINQPad2nd
Lippert, Eric2nd3rd4th5th
Liskov’s Substitution Principle
List<T>2nd3rd4th5th
  collection initializers
  lambda expression examples
lists
literals
  default parameter values
little-endian
local variable declarations, anonymous methods
local variables2nd3rd4th5th
  autogenerated for fake pass-by-value
  captured by anonymous methods
  dynamic
  for pass-by-reference parameters
  implicit typing
  instantiation
  iterator blocks
  restrictions on var
  traditional postcondition testing
locking2nd3rd4th5th
  field-like events
log files2nd
Log, DataContext
logging2nd3rd
  configuration
  fake LINQ provider
logic
  nullable Booleans
  represented in expression trees
logical AND operator
logical negation operator
logically related conditions
  combining in where clauses
LongCount
loops, captured variables2nd
l-values

M

macros
magic value pattern2nd3rd
magic variables
Main method, snippets
mainstream languages
maintainability2nd3rd4th5th
maintenance2nd
  cost of multiple configurations
MakeGenericType
malformed contracts
managed code
Managed Extensibility Framework
Mandelbrot
mapping, LINQ to SQL
MARS
marshalling2nd
master pages
matching
Math
mathematical code
Max
  SortedSet<T>
maybe, nullable logic
MD5
meaning, clarifying arguments
mechanisms, iteration
media player
MEF
Meier, Sid
member invocation
member resolution
members, obtaining without reflection
memory
  cost of JIT compilation
  generics
  limit on buffering operations
  overhead of extra methods
  overhead of objects
  representation of null
memory fragmentation
memory leaks
MemoryStream2nd
messages, contract failures
metadata2nd
  contracts
  DynamicAttribute
  LINQ to SQL
metaobjects2nd3rd
metaprogramming
MetaRumpelstiltskin
method arguments
  compared with type arguments
  role in type inference
method calls, specifying arrays as arguments
method group conversions2nd
  ambiguity
  breaking changes
method groups2nd
  complexities in overloading
  dynamic code
method invocation, ExpandoObject
method parameters, compared with type parameters
method signatures
MethodInfo2nd3rd4th
  compiler shortcut
MethodInvoker2nd
methods
  compatibility with delegate types
  delegate compatibility
  generated by anonymous methods
  meaning of return statements
  using results with var
  virtual dispatch
metrics
Meyer, Bertrand
Micro Framework2nd
micro-optimization
Microsoft2nd3rd4th5th6th
  anonymous type implementation
  CCR and DSS Toolkit
  choices around exceptions
  event pattern guidelines
  pragma directives
  Reactive Extensions
  Robotics Studio
Microsoft.Office.Interop.Excel
migrating, to use extension methods
Min
  SortedSet<T>
MinValue
miscellaneous utility library
MiscUtil2nd3rd
misinformation
missing data
misuse of helper classes
ML
mocking2nd
model databases
modifiers
  extension methods
  out and ref with named arguments
monads
Mondrian
monitors, locking changes in C# 4
Mono2nd3rd4th5th6th
MonoTouch
Monty Python
Moonlight
MoreLINQ2nd
MouseEventArgs
MouseEventHandler
MoveNext2nd3rd4th5th
msbuild
mscorlib
MSDN2nd3rd
  expression tree documentation
multicast delegates, generic variance
MulticastDelegate
multiple active result sets
multiple criteria, sorting
multiple dispatch
multiple from clauses
multiple orderings, in one orderby clause
multiple query continuations
multiple type parameters variance
multitargeting
mutability2nd3rd4th
  collections2nd
  encouraged by C# 3
  GetViewBetween
  method call chaining
mutated state, postconditions
myths, value types and reference types

N

name/value pairs
named arguments2nd3rd4th
  evaluation order
  in tandem with optional parameters
  to resolve overload ambiguity
named indexers2nd
  design decisions
namespace alias qualifier
namespace aliases2nd
namespaces
  extension methods2nd
  LINQ to XML
naming2nd3rd
  avoiding collisions
  collisions2nd
  compile-time duck typing
  extension methods2nd
  generic reflection methods
  lambda expression parameters
  overloading and dynamic typing
  parameters
  readability benefit of object initializers
  scope in the real world
  variables used in contracts
naming conventions
  class contracts
  extension methods
  lambda expression parameters
  ObjectInvariant
  type parameters2nd
NaN.
    See not a number.
native code2nd3rd4th
  generics
natural language, fluent interfaces
nested classes
nested subscriptions, LINQ to Rx
nested types2nd
  generics
  in snippets
  interfaces
nested variance
NetworkStream
new keyword, object initializers
new style contracts
Ng, Sam
NGen
Noda Time
Nodes
nodes
  LINQ to XML
  of expression trees
NodeType property, expression trees
none, Code Contracts retention option
nongeneric classes, requirement for extension methods
nongeneric helper classes
non-nested classes, requirement for extension methods
non-null obligations
non-nullable fields, generating inner joins
non-nullable reference types2nd
non-pointer types
nonrepeatable sequences
nonvirtual calls, instance method calls on null references
nonvoid return types, lambda expressions
no-op select clauses
not a number
notation, transparent identifiers
notes
NotificationSubscription, sample data model
NULL
  database fields
  SQL
null2nd3rd4th5th
  as a typeless expression
  comparisons with generic values2nd
  default parameter values
  extension methods
  ignored in LINQ to XML construction
  language support for Nullable<T>
  magic value for optional parameters
  meaning of
  meaning when combining delegates
  nullable value types
  parameter passing
  reference type constraints
  results of CompareTo(null)
null coalescing operator2nd
  used in comparisons
null literal
null references
  boxing Nullable
  extension methods
null values
  Hashtable
Nullable class2nd
nullable fields, generating outer joins
nullable types
  lifted conversions
  meaning in the C# specification
nullable value types2nd3rd
  compared with “nullable type”
  conversions in LINQ to XML
  generic comparisons
  optional parameters
  underlying type
Nullable<T>
  boxing
  constructors
  conversions
  default constructor2nd
  Equals method
  explicit conversions2nd
  GetHashCode method
  GetValueOrDefault method
  HasValue property2nd
  implicit conversions2nd
  null value
  operators
  ToString method
  unboxing
  Value property
nullity
nullity check, events
NullReferenceException2nd3rd4th5th
  unboxing
numbers, LINQ to XML content

O

object
  immediate base of helper classes
  LINQ to XML construction pattern
  use before generics
object initializers2nd3rd
  encouraging mutability
object model, Office
Object Relational Mapping
ObjectInvariant, conventions
object-oriented code
object-oriented data models, inner joins
object-oriented programming
object-relational mapping
objects
  distinguishing from references
  role in parameter passing
Observable<T>
ObservableCollection<T>
observables, hot and cold
observers
off-by-one errors
Office2nd3rd
office suite
OfType2nd3rd
OldValue
on, contextual keyword
OnCompleted
one-to-one correspondence, group joins
OnException
OnNext
on-the-fly reconfiguration
open constructed types, reflection with generics
open source
  DLR
  libraries
open types
  generics
OpenText2nd
operand types, operators or nullable types
operator constraints
operators2nd.
    See also Nullable, operators.
  default value expression
  generics
  Nullable<T>
  overloaded terminology
  provided by languages for nullable types
  purity
  static classes
  type constraints
optimization2nd3rd
  LINQ operators2nd3rd4th5th
optional parameters2nd3rd
  declaring
  in tandem with named arguments
optional values
order of evaluation, null coalescing operator
order of execution, multicast delegates
OrderBy2nd3rd4th5th
OrderByDescending2nd3rd
OrderedParallelQuery
ordering2nd
  arguments and parameters
  dictionaries
  importance in anonymous types
  initialization
  Parallel LINQ
OrdinalIgnoreCase
ORM.
    See Object Relational Mapping.
out modifier, covariance
out of process queries2nd
out parameters
  forbidden in partial methods
  inability to capture
  lambda expressions
  named arguments
  postconditions
  prohibited in iterator blocks
  restrictions on extension methods
  restrictions on generic variance
  restrictions on optional parameters
OutAttribute
outer joins
  LINQ to SQL
outer sequence
outer variables
output parameters2nd
  TryXXX pattern
output positions
  covariance
  out parameters
Output window, warning numbers
overengineering
overflows
overhead, memory used by objects
Overlaps
overload resolution2nd3rd4th5th
  breaking changes due to generic variance
  extension methods
  generic types
  generics
  lambda expressions and dynamic typing
  named arguments and optional parameters
  summary of changes in C# 3
overloaded operators, nullable types
overloading2nd
  alternative to optional parameters
  changes in C# 3
  complicated by inheritance
  custom LINQ operators
  dynamic arguments
  Func delegate types
  GroupBy
  method group conversions
  method groups
  query expressions and dot notation
  single and multiple dispatch
overloads, Execute and CreateQuery
overriding2nd3rd
  partial types
  return type covariance
ownership

P

P/Invoke2nd
pain points
Pair<T1,T2>
Parallel Extensions2nd3rd4th5th
Parallel LINQ
ParallelEnumerable
parallelism2nd3rd
ParallelQuery
parameter array
  optional parameters
parameter expressions
  appearance in visualizer
parameter list
parameter names
  from range variables
  importance of names
parameter passing
parameter type contravariance
parameter types
  anonymous methods
  conversion from argument types
  delegates
parameter wildcarding
ParameterExpression
parameterized properties
ParameterizedThreadStart2nd3rd
parameterless constructors2nd3rd
  default parameter values
  generic type constraints
parameters
  anonymous methods
  binding in expression trees
  captured by anonymous methods
  comparing type and method parameters
  contravariance
  contravariance in delegates
  documentation
  dynamic
  dynamic type
  implicit typing in lambda expressions
  initializing arrays
  Invoke method on a delegate type
  iterator blocks
  lambda expressions with a single parameter
  listing explicitly in lambdas
  optional
  readability
  required for extension methods
  terminology
  type inference
  using lambda expressions for logging
ParamName
params
  optional parameters
parent nodes, LINQ to XML content
parentheses
  constructor calls
  query expressions and dot notation
  removing from lambda expressions
parser
partial methods2nd
partial types
  initialization
  LINQ to SQL
  restrictions
partial variance
partial, contextual keyword
PartialComparer
partitioning operators
pass by reference
pathological cases
pattern matching
patterns2nd3rd
  iterator
  language support
  nullability
pausing execution, iterator blocks
pdb files
Peek
  Queue<T>
  Stack<T>
perfection
performance2nd3rd
  as operator with nullable value types
  boxing
  Code Contracts2nd
  cost of JIT compilation
  dynamic typing2nd
  generic comparisons with null
  generics2nd3rd
  Java generics
  LINQ2nd3rd
  of value and reference types
  TryXXX pattern
performance characteristics
permissions
perspectives, viewing types and objects
Pex
phases, type inference
PIA.
    See Primary Interop Assemblies.
pinning
pipelines
  LINQ
piping data
placeholders
  Result
  type parameters
planning, generic variance
platform designers
PLINQ
Point structures, mutability
pointer types, restrictions on extension methods
pointers2nd3rd
polymorphism2nd
Pop
portability
position, iterators
postconditions2nd
  inherited contracts
Power Collections
power, language design choices
practices
pragma directives
  checksum
  warnings
pragmatism
pre and post, Code Contracts retention option
precompilation, ASP.NET
preconditions2nd
  Code Contracts retention option
  contract reference assemblies
  inherited contracts
  suggested by static checker
  variations in meaning
predefined conversions
predefined operators
Predicate
  purity
predicates2nd3rd4th
predictability
prefix, convention for type parameter names
preprocessing directives
preprocessing, query expressions
preprocessor symbols2nd
  Code Contracts
primary constraints
Primary Interop Assemblies2nd3rd
primary keys
primary orderings
primitive types
private
  access modifier
  partial methods
private accessibility, from nested types
private constructors, helper methods
private fields
private members, access from nested types
processing models, buffering versus streaming
ProcessStartInfo
producer/consumer pattern
production assemblies
productivity2nd3rd
profiles
program verifier, Spec#
project files
  editing for dependencies
project management
projection initializers
projection operators
projections2nd3rd
  grouping
  LINQ to Rx
  sorting
Projects, sample data model
promises
promotion, addition operands
pronunciation
  generics
  lambda expressions
properties2nd
  access modifiers
  anonymous types
  automatically implemented
  default
  ExpandoObject
  getter / setter access
  mutability
  navigation in object-oriented models
  projection initializers
  purity
  setting subproperties with object initializers
  setting with object initializers
property descriptors
property names, anonymous types
protected access, prohibited in static classes
protected methods
Protocol Buffers
provider pattern
proxying, COM
public domain
public interface, unit testing
public keys, friend assemblies
public methods, invariants
publish/subscribe pattern
pull model, LINQ to Objects
pure methods
PureAttribute
purity
Push
push model, LINQ to Rx
Python2nd3rd4th

Q

quantifier operators
queries
  LINQ to SQL
  LINQ to XML
  observables
  parallelizing
query continuations2nd
  multiple
query expression pattern2nd
query expressions2nd3rd4th5th6th
  compared to dot notation2nd
  consistency between LINQ providers
  continuation translations
  degenerate queries
  dynamic code
  explicitly typed range variables
  order of clauses
  select clauses
  translation2nd3rd4th
  type inference example
query optimizer
Queryable2nd3rd
querying
QueryProvider, property of IQueryable
Queue<T>

R

Rahien, Ayende
random numbers2nd
Random, using carefully
Range2nd
  Excel
  LINQ to Rx
  ParallelEnumerable
range variables2nd
  combined with transparent identifiers
  explicit typing
  scope with query continuations
Range<T>
raw types (Java)
reachability
Reactive Extensions2nd3rd4th5th
readability2nd3rd4th5th
  argument reordering
  captured variables
  consistency
  declarative code
  extension method naming
  extra methods for delegates
  generics
  implicit typing2nd
  iterator blocks
  LINQ2nd3rd4th5th
  LINQ to XML namespace support
  measuring objectively
  method group conversions
  multiple where clauses
  named arguments2nd
  naming
  nullable types
  query expressions and dot notation
  single exit point
  transparent identifiers
  using Word before C# 4
ReadAllLines2nd
ReadAllText
ReaderWriterLockSlim
read-evaluate-print loop
ReadFully
reading from streams
ReadLine
read-only fields, anonymous types
read-only properties2nd
  anonymous types
ReadOnlyCollection
ReadOnlyCollection<T>2nd
ReadOnlyObservableCollection<T>
receivers
recompilation2nd
  const and default values
reconfiguration, on the fly
rectangular arrays2nd
recursion
  guard in Code Contracts
  LINQ to XML construction
red-black trees
redeployment
redirecting
redistribution
redundant computations
ref parameters
  CLR support
  COM
  inability to capture
  invariance
  lambda expressions
  named arguments
  postconditions
  prohibited in iterator blocks
  restrictions on extension methods
  restrictions on optional parameters
refactoring2nd3rd4th5th
reference conversions2nd3rd
  generic variance2nd
reference type constraints2nd
  avoiding boxing
reference types2nd3rd
  array covariance
  null coalescing operator
  nullability
  type arguments and generic variance
  wrapper for nullable value types
references
  memory size
  navigation in object-oriented models
referencing, Primary Interop Assemblies
reflection2nd3rd
  generics2nd
  invoking methods
  obtaining a MethodInfo2nd
  operators and expression trees
  retrieving generic method definitions
  side-stepping with dynamic typing2nd3rd
Reflector2nd3rd4th5th6th
reformatting
refreshingly minty code
regions
register optimizations
regular expressions
relational data models, inner joins
relational operators
release builds2nd
  assertions
release requires, Code Contracts retention option
releasing resources, foreach
Remove2nd3rd
RemoveAt
RemoveFirst
RemoveItem
RemoveLast
RemoveWhere
removing delegates
Repeat
repetitive code
REPL2nd
Replace
required parameters
requirements
Requires2nd
research
Reset
resolution, dynamic calls
resource acquisition, timing in iterators
resource management, iterators
resources, released after iterating
responding dynamically
Response.Redirect
RESTful services
restoring warnings
restrictions
  default parameter values
  documenting
  dynamic code
  generic variance
  implicitly typed local variables
  nullable type operators
  optional parameters
  partial types
Result
return statements
  implicit return types
  lambda expressions
  prohibited in iterator blocks
return types
  anonymous methods
  compatibility with delegate types
  compatibility, covariance of delegates in C# 2
  covariance2nd
  covariance in delegates
  delegates
  dynamic
  Func and Action
  implementing IDynamicMetaObjectProvider
  inferred from anonymous functions
  lambda expressions
  of Invoke method on a delegate type
  overloading
return values
  covariance
  indicators of success
  postconditions
return, anonymous methods
ReturnType
reuse, native code from JIT compilation
Reverse2nd3rd4th
  missing from LINQ to Rx
  SortedSet
reversing strings
rewriting, Code Contracts
right associativity, null coalescing operators
right sequence
robustness2nd
  aided by generics
  dynamic typing
  LINQ to XML queries
  static checking
root element, LINQ to XML
Root property, XDocument
RouteValueDictionary
rows, joins
RPCs
RSS
Ruby2nd
rules
  C# 2 type inference
  DLR
  dynamic typing
rules engines
Rumpelstiltskin
runtime2nd
  behavior of casting
RuntimeBinderException

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.148.103.210