late-bound services
Lazy objects, lifetime for
Lazy<IIngredient>
LazyService, 2nd
Lease property
LeasedObjectCache class
LeasedObjectCache constructor
leases, implementing
LifecycleIs method
lifestyle API
Lifestyle property
lifetime
for DEPENDENCIES
disposable
managing with container
for Future objects
for Lazy objects
for PER GRAPH objects
sharing repository within graph example
when to use
for POOLED objects
reusing expensive repositories example
when to use
for SINGLETON objects
thread-safe in-memory repository example
when to use
for TRANSIENT objects
resolving multiple repositories example
when to use
for WEB REQUEST CONTEXT objects
and Session Request Context objects
and Thread Context objects
HomeController with request-shared repository example
when to use
LIFETIME MANAGEMENT, 2nd
lifetime scope
LifetimeManager API
LifetimeManager class, 2nd
LifetimeStrategy class
LISKOV SUBSTITUTION PRINCIPLE.
See LSP.
LoadConfiguration method, 2nd
LobsterBisque class, 2nd, 3rd
Locator class, 2nd
Locator.Reset() method
logging aspect
loosely coupled model
LSP (LISKOV SUBSTITUTION PRINCIPLE), 2nd
Main method, 2nd, 3rd, 4th
MainObjectCache
maintainability, 2nd
MainViewModel
MainWindow, 2nd
mainWindow variable
MainWindowAdapter, 2nd
MainWindowViewModel class, 2nd, 3rd
MainWindowViewModelFactory
Managed Extensibility Framework.
See MEF.
mapping, ABSTRACTIONS to concrete types, 2nd, 3rd
maximum size option
MaxSize property
MayonnaiseAdapter, 2nd
MEF (Managed Extensibility Framework), 2nd, 3rd
composing difficult APIs
parts with non-public constructors
primitive parts
wiring with PROPERTY INJECTION design pattern
introduction to
catalogs
defining imports and exports
resolving objects
managing lifetime
declaring creation policy
releasing objects
multiple components
selecting among multiple candidates
wiring
MEF Contrib open source project
MEF DI CONTAINER
MefOliveOil class
memory, preventing leaks of, 2nd
MenuRegistry class
MessageBox.Show method
messageWriter application
METHOD INJECTION pattern
description of
examples of
related patterns
when to use
MethodInfo instance
Microsoft Solutions Framework.
See MSF.
Microsoft, and containers
Microsoft.Practices.Unity.Configuration
Microsoft.Practices.Unity.InterceptionExtension assembly
minimum size option
misconceptions
is Abstract Factory
only for late binding
only for unit testing
requires container
Model View ViewModel (MVVM), 2nd
Module class
Money class
MoneyContract
MousseAuChocolat, 2nd, 3rd, 4th, 5th, 6th
MSF (Microsoft Solutions Framework)
Name property, 2nd
named exports, importing
NamedParameter
natural clusters
NDepend, monitoring coupling using
NeedyClass
.NET 4.0
.NET Base Class Library
.NET DI CONTAINERS
.NET types, in XML
new keyword
newing up, DEPENDENCIES
non-public constructors, parts with
NonShared
Null Object, 2nd
NullReferenceExceptions, 2nd, 3rd, 4th, 5th
NullService
Object Builder module
OBJECT COMPOSITION
for ASP.NET applications
for ASP.NET MVC applications
CommerceControllerFactory example
with custom Controller Factory
for console applications
for PowerShell
for WCF applications
extensibility for
ProductManagementService example
for WPF applications
object element, 2nd
object graph, per request
OBJECT LIFETIME, 2nd
Object property
object scopes, configuring
objectCache field
ObjectContext class, 2nd, 3rd
ObjectDataSource control, 2nd
ObjectFactory class, 2nd
objects
composition of
lifetime of
ObservableCollections
OCP (OPEN/CLOSED PRINCIPLE), 2nd
OfType method
OfType<T> filter
OliveOil DEPENDENCY, 2nd
OliveOil property, 2nd
OliveOilAdapter class
OnActivating event
OnActivating method
OnStartup method, 2nd
OPEN/CLOSED PRINCIPLE.
See OCP.
[OperationContract] attribute, 2nd
OrderAdded method
OrderRepository class, 2nd
OrderService class, 2nd
OrderService example
outside-in technique
p&p (patterns & practices)
packaging, configuration, 2nd, 3rd
Page class
Page objects
parallel development, 2nd
Parameter class
Parameter Objects
ParameterInfo object
params array
[PartCreationPolicy] attribute
Parts property
parts, importing
patterns & practices.
See p&p.
Per Dependency
PER GRAPH
objects, lifetime for
sharing repository within graph example
when to use
Per Lifetime Scope
performance monitoring
PerRequest
PerResolveLifetimeManager
PerWebRequest, 2nd
Plain Old CLR Objects.
See POCOs.
Ploeh.Samples.MenuModel namespace
plug-ins, configuring multiple implementations of same
POCOs (Plain Old CLR Objects)
Pointcut
policySource
pool cleanup option
pool preparation option
PooledWithSize method
PostSharp SDK
PostTearDown method
PowerShell, OBJECT COMPOSITION for
PreBuildUp method
PresentationLogic library, 2nd, 3rd
PresentationLogicUnitTest
PresentationModel
primitive DEPENDENCIES, 2nd, 3rd
primitive parts
[PrincipalPermission] attribute
PrincipalPermission class
PrincipalPermission demand
Proceed method, 2nd
Process method, 2nd
Product class, 2nd, 3rd
Product entity
ProductChannelFactory
ProductContract
ProductManagementAgent class
ProductManagementClient, 2nd
ProductManagementClientContainer
ProductManagementClientInterceptorSelector class
ProductManagementService class, 2nd
ProductManagementService example
ProductManager roles
ProductRepository class, 2nd, 3rd, 4th, 5th
ProductRepositoryFactory, 2nd
ProductService class, 2nd, 3rd, 4th, 5th, 6th
using SERVICE LOCATOR anti-pattern
with FOREIGN DEFAULT
ProductViewModel, 2nd
ProductWcfAgent library, 2nd
Program class
programming to interfaces
PropertiesAutowired method
property element
PROPERTY INJECTION, 2nd, 3rd, 4th, 5th, 6th
PROPERTY INJECTION pattern
description of
examples of
related patterns
when to use
wiring with, 2nd, 3rd, 4th, 5th
AUTO-WIRING
explicitly
providers, currency
PublicKeyToken
purpose, of DI
readonly keyword, 2nd, 3rd
ReferenceMatchesDefinition method
register element
Register method, 2nd, 3rd, 4th, 5th
Register phase
REGISTER RESOLVE RELEASE pattern, for containers
dynamic structure for
static structure for
RegisterAssemblyTypes method, 2nd
RegisterModule overloads
RegisterType method, 2nd, 3rd, 4th
RegisterType overload
registration, automatic, 2nd, 3rd
Registry class, 2nd
RegularExpressionMethodPointcut
Release method, 2nd, 3rd, 4th
Release phase
ReleaseController method, 2nd, 3rd
ReleaseExport method
ReleaseInstance
releasing
components, 2nd, 3rd
parts
disposing container
exports
Remove-Basket cmdlet
RemoveValue method, 2nd, 3rd
repository DEPENDENCY, 2nd
repository member, 2nd
RepositoryBasketDiscountPolicy class, 2nd, 3rd, 4th
repositoryForCampaign
repositoryForPolicy
RequestContext
requests, resolving
RequiredCreationPolicy property
Resolve method, 2nd, 3rd, 4th, 5th, 6th
Resolve phase
ResolveAll method, 2nd, 3rd, 4th
ResolvedArrayParameter<ICourse> instance
ResolveDiscountRepository method
ResolvedParameter class, 2nd, 3rd, 4th, 5th
ResolveHomeController method
ResolveLease method
ResolveNamed method
ResolvePresenter method
ResolveProductManagementService method, 2nd, 3rd
resolving
multiple repositories example
named components by convention
objects, 2nd, 3rd
mapping ABSTRACTIONS to concrete types, 2nd, 3rd
resolving weakly typed services, 2nd, 3rd
type requests
weakly typed services
sequences
weakly typed services, 2nd, 3rd
resources
embedded, loading XML using
XML, combining
result variable
reusing expensive repositories example
Rillettes, 2nd, 3rd, 4th, 5th
RouteController
RouteSpecification
RouteType
RRR.
See REGISTER RESOLVE RELEASE.
run-time INTERCEPTION
runtime values, mapping to ABSTRACTIONS
CurrencyProvider example
design considerations
selecting routing algorithm example
Salutation class, 2nd, 3rd, 4th
SauceBéarnaise class, 2nd, 3rd, 4th
SauceBéarnaise instance
SauceCatalog
SauceConvention class
save the order action
Scan method
Scope attribute
scope, of DI
INTERCEPTION
OBJECT COMPOSITION
OBJECT LIFETIME
three dimensions of
SEAMS
SecureMessageWriter class, 2nd
SecureProductRepository Decorator
security aspect
security, CROSS-CUTTING CONCERNS
SelectAllProducts method
SelectInterceptors method
SelectProduct method
sequences, 5th, 7th
AUTO-WIRING, 2nd
configuring arrays
picking exports from larger set
picking objects from larger set
refactoring to better course
resolving
wiring, 2nd, 3rd
AUTO-WIRING, 2nd, 3rd
picking exports from larger set
[Serializable] attribute
SERVICE LOCATOR, 2nd, 3rd, 4th, 9th, 10th
analysis of
impact
refactoring toward DI
example of, ProductService class
ServiceActivationException
[ServiceContract] attribute, 2nd
ServiceHost, 2nd, 3rd
ServiceHostFactory, 2nd
ServiceOverrides method, 2nd, 3rd
Session Request Context objects, lifetime for
Set method
Setter<T> method
SetValue method, 2nd
Shared value
sharing repository within graph example
shopping baskets, adding currency providers to
ShowDialog method
single extension method
SINGLE RESPONSIBILITY PRINCIPLE.
See SRP.
SingleInstance method, 2nd, 3rd
SINGLETON LIFESTYLE, 2nd
Singleton method
Singleton objects, lifetime for
thread-safe in-memory repository example
when to use
SingletonConvention
Site property
SlidingLease class, 2nd
SmartInstance<T> class, 2nd, 3rd
SmartInstance<VealCutlet>
SOLID principles
SomeAspect.tt
SomeAspectDecorator.cs
SomeClass, 2nd
SomeLifetimeManager
SomeService class
SomeServiceFactory class
spiciness parameter, 2nd, 3rd, 4th
Spiciness.Hot, 2nd, 3rd, 4th
Spring.NET DI CONTAINER, 2nd
configuring difficult APIs
primitive DEPENDENCIES
static factories
wiring with PROPERTY INJECTION design pattern
introduction to
configuring container
loading XML
resolving objects
managing lifetime
multiple components
INTERCEPTORS
selecting among multiple candidates
wiring
SQL Server Management Studio
SQL Server-based data access
SqlAuditor
SqlBasketRepository
SqlCampaignRepository
SqlCurrencyProvider
SqlDataAccess library
SqlDiscountRepository instance, 2nd
SqlOrderRepository
SqlProductRepository class, 2nd
sqlRepository
SRP (SINGLE RESPONSIBILITY PRINCIPLE), 2nd, 3rd
srvc variable
stability pattern
STABLE DEPENDENCIES
StartupUri attribute, 2nd
static factories, 2nd
static keyword
static structure, for RRR pattern
Steak class
StreamReader
streams, loading XML using
StreamWriter
StructureMap DI CONTAINER, 2nd, 3rd, 4th, 5th, 18th
configuring difficult APIs
objects with code blocks
primitive DEPENDENCIES
wiring with PROPERTY INJECTION design pattern
introduction to
configuring container
packaging configuration
resolving objects
managing lifetime
multiple components
selecting among multiple candidates
wiring
StructureMap.IContainer interface
SupplierReorderPolicy
SUT (System Under Test), 2nd, 3rd
System.Attribute
System.ComponentModel namespace
System.ComponentModel.Component, 2nd
System.ComponentModel.Design.IDesigner
System.ComponentModel.IComponent
System.DateTime.Now
System.IO.StreamReader
System.IO.StreamWriter
System.Object, 2nd
System.Random
System.Runtime.Remoting.Lifetime.ILease
System.Security.Cryptography.RandomNumber-Generator
System.Security.Permissions.PrincipalPermission class
System.Security.Principal.IPrincipal interface
System.ServiceModel.ChannelFactory<TChannel>
System.Web.HttpContext
System.Web.Mvc.ViewPage
System.Web.Mvc.ViewPage<FeaturedProductsViewModel>
System.Windows.Window
TDD (Test-Driven Development), 2nd, 3rd, 4th, 5th, 6th
Teardown method, 2nd
technical problem
TESTABILITY, 2nd
testable
Test-Driven Development.
See TDD.
Third-party Connect
this.agent
this.container, 2nd
Thread Context objects, lifetime for
Thread.CurrentPrincipal, 2nd, 3rd
Thread.CurrentUICulture
Thread.Sleep
ThreadLocal
thread-safe in-memory repository example
thread-safety
Three Calls Pattern
ThreeCourseMeal class, 2nd, 3rd
ThreeCourseMeal constructor
ThreeCourseMeal objects
three-layer application diagram
tightly coupled code
time, modifying
TimeProvider class, 2nd, 3rd, 4th
TimeProvider parameter
TimeProvider Stub
TimeSpan, 2nd
Total property
Trace class
Trace.Listeners property
Trace.Write method
TRANSIENT objects, lifetime for
resolving multiple repositories example
when to use
TransientLifetimeManager
type catalogs
Type instance, 2nd
type requests, resolving, 2nd, 3rd, 4th
TypeCatalog
TypeConverter class
typeof(BasketController)
types, exporting
type-safe approach
UI-neutral
Uniform Resource Identifiers.
See URIs.
Uninterrupted Power Supply.
See UPS.
Unique lifestyle, 2nd
UnitPrice property, 2nd
unit-testing coupling
Unity DI CONTAINER, 2nd
configuring difficult APIs
primitive DEPENDENCIES
registering components with code blocks
wiring with PROPERTY INJECTION design pattern
introduction to
configuring container
packaging configuration
resolving objects
managing lifetime
configuring
developing custom
multiple components
INTERCEPTORS
selecting among multiple candidates
wiring
UnityContainer class, 2nd
UnityContainer instance
UnityContainerExtension class
UpdateCurrency program example
UpdateCurrencyCode method
UpdateProduct method
UPS (Uninterrupted Power Supply)
UriResource
URIs (Uniform Resource Identifiers)
Use method
using scope
UsingFactoryMethod
Value property
valueAccessor
VealCutlet
class
component
instance, 2nd, 3rd
object
type, 2nd
Verify method
ViewModels, 2nd
ViewResult instance, 2nd
vmFactory
VOLATILE DEPENDENCIES, 2nd
WCF applications
extensibility for
ProductManagementService example
wcfAgent variable
WcfProductManagementAgent class, 2nd, 3rd
weakly typed services, resolving, 2nd, 3rd
WEB REQUEST CONTEXT objects, lifetime for
and Session Request Context objects
and Thread Context objects
HomeController with request-shared repository example
when to use
web.config, 2nd
WillExecute property
WindowAdapter
Windows Azure Table Storage Service
Windows Communication Foundation.
See WCF.
Windows Complication Foundation
Windows Presentation Foundation.
See WPF.
Windsor example
activating Interceptors
Circuit Breaker Interceptor
exception handling Interceptor
WindsorContainer, 2nd, 3rd, 4th, 5th
WindsorControllerFactory, 2nd
WithParameter method, 2nd, 3rd
WithProperty method
WithService property
WorkflowRuntime
WorkflowSchedulerService
WPF (Windows Presentation Foundation), 2nd, 3rd
wpfWindow field
WpfWindow property
Write method, 2nd
writer instance
writerMock
XamlSchemaContext
XferProductRepository class
XML style
XmlApplicationContext class, 2nd
XmlObjectFactory, 2nd
XmlProductRepository
XmlReader
18.191.233.205