comparison src/packages/Unity.3.0.1304.1/lib/wp8/Microsoft.Practices.Unity.WindowsPhone.xml @ 0:5bca2d201ad8

initial commit
author cin
date Sun, 24 Aug 2014 11:14:55 +0400
parents
children
comparison
equal deleted inserted replaced
-1:000000000000 0:5bca2d201ad8
1 <?xml version="1.0"?>
2 <doc>
3 <assembly>
4 <name>Microsoft.Practices.Unity.WindowsPhone</name>
5 </assembly>
6 <members>
7 <member name="T:Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy">
8 <summary>
9 A <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderStrategy"/> that emits IL to call constructors
10 as part of creating a build plan.
11 </summary>
12 </member>
13 <member name="T:Microsoft.Practices.ObjectBuilder2.BuilderStrategy">
14 <summary>
15 Represents a strategy in the chain of responsibility.
16 Strategies are required to support both BuildUp and TearDown.
17 </summary>
18 </member>
19 <member name="T:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy">
20 <summary>
21 Represents a strategy in the chain of responsibility.
22 Strategies are required to support both BuildUp and TearDown. Although you
23 can implement this interface directly, you may also choose to use
24 <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderStrategy"/> as the base class for your strategies, as
25 this class provides useful helper methods and makes support BuildUp and TearDown
26 optional.
27 </summary>
28 </member>
29 <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
30 <summary>
31 Called during the chain of responsibility for a build operation. The
32 PreBuildUp method is called when the chain is being executed in the
33 forward direction.
34 </summary>
35 <param name="context">Context of the build operation.</param>
36 </member>
37 <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy.PostBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
38 <summary>
39 Called during the chain of responsibility for a build operation. The
40 PostBuildUp method is called when the chain has finished the PreBuildUp
41 phase and executes in reverse order from the PreBuildUp calls.
42 </summary>
43 <param name="context">Context of the build operation.</param>
44 </member>
45 <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy.PreTearDown(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
46 <summary>
47 Called during the chain of responsibility for a teardown operation. The
48 PreTearDown method is called when the chain is being executed in the
49 forward direction.
50 </summary>
51 <param name="context">Context of the teardown operation.</param>
52 </member>
53 <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy.PostTearDown(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
54 <summary>
55 Called during the chain of responsibility for a teardown operation. The
56 PostTearDown method is called when the chain has finished the PreTearDown
57 phase and executes in reverse order from the PreTearDown calls.
58 </summary>
59 <param name="context">Context of the teardown operation.</param>
60 </member>
61 <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
62 <summary>
63 Called during the chain of responsibility for a build operation. The
64 PreBuildUp method is called when the chain is being executed in the
65 forward direction.
66 </summary>
67 <param name="context">Context of the build operation.</param>
68 </member>
69 <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderStrategy.PostBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
70 <summary>
71 Called during the chain of responsibility for a build operation. The
72 PostBuildUp method is called when the chain has finished the PreBuildUp
73 phase and executes in reverse order from the PreBuildUp calls.
74 </summary>
75 <param name="context">Context of the build operation.</param>
76 </member>
77 <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderStrategy.PreTearDown(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
78 <summary>
79 Called during the chain of responsibility for a teardown operation. The
80 PreTearDown method is called when the chain is being executed in the
81 forward direction.
82 </summary>
83 <param name="context">Context of the teardown operation.</param>
84 </member>
85 <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderStrategy.PostTearDown(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
86 <summary>
87 Called during the chain of responsibility for a teardown operation. The
88 PostTearDown method is called when the chain has finished the PreTearDown
89 phase and executes in reverse order from the PreTearDown calls.
90 </summary>
91 <param name="context">Context of the teardown operation.</param>
92 </member>
93 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
94 <summary>
95 Called during the chain of responsibility for a build operation.
96 </summary>
97 <remarks>Existing object is an instance of <see cref="T:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext"/>.</remarks>
98 <param name="context">The context for the operation.</param>
99 </member>
100 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy.SetPerBuildSingleton(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
101 <summary>
102 A helper method used by the generated IL to set up a PerResolveLifetimeManager lifetime manager
103 if the current object is such.
104 </summary>
105 <param name="context">Current build context.</param>
106 </member>
107 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy.CreateSignatureString(System.Reflection.ConstructorInfo)">
108 <summary>
109 Build up the string that will represent the constructor signature
110 in any exception message.
111 </summary>
112 <param name="constructor"></param>
113 <returns></returns>
114 </member>
115 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy.SetCurrentOperationToResolvingParameter(System.String,System.String,Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
116 <summary>
117 A helper method used by the generated IL to store the current operation in the build context.
118 </summary>
119 </member>
120 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy.SetCurrentOperationToInvokingConstructor(System.String,Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
121 <summary>
122 A helper method used by the generated IL to store the current operation in the build context.
123 </summary>
124 </member>
125 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy.ThrowForAttemptingToConstructInterface(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
126 <summary>
127 A helper method used by the generated IL to throw an exception if
128 no existing object is present, but the user is attempting to build
129 an interface (usually due to the lack of a type mapping).
130 </summary>
131 <param name="context">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderContext"/> currently being
132 used for the build of this object.</param>
133 </member>
134 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy.ThrowForNullExistingObject(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
135 <summary>
136 A helper method used by the generated IL to throw an exception if
137 a dependency cannot be resolved.
138 </summary>
139 <param name="context">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderContext"/> currently being
140 used for the build of this object.</param>
141 </member>
142 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodConstructorStrategy.ThrowForNullExistingObjectWithInvalidConstructor(Microsoft.Practices.ObjectBuilder2.IBuilderContext,System.String)">
143 <summary>
144 A helper method used by the generated IL to throw an exception if
145 a dependency cannot be resolved because of an invalid constructor.
146 </summary>
147 <param name="context">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderContext"/> currently being
148 used for the build of this object.</param>
149 <param name="signature">The signature of the invalid constructor.</param>
150 </member>
151 <member name="T:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext">
152 <summary>
153
154 </summary>
155 </member>
156 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.#ctor(System.Type)">
157 <summary>
158
159 </summary>
160 <param name="typeToBuild"></param>
161 </member>
162 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.AddToBuildPlan(System.Linq.Expressions.Expression)">
163 <summary>
164
165 </summary>
166 <param name="expression"></param>
167 </member>
168 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.CreateParameterExpression(System.String,System.Type,System.Linq.Expressions.Expression)">
169 <summary>
170
171 </summary>
172 <param name="parameterKey"></param>
173 <param name="parameterType"></param>
174 <param name="setOperationExpression"></param>
175 <returns></returns>
176 </member>
177 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.GetResolver(Microsoft.Practices.ObjectBuilder2.IBuilderContext,System.Type,System.String)">
178 <summary>
179 Helper method used by generated IL to look up a dependency resolver based on the given key.
180 </summary>
181 <param name="context">Current build context.</param>
182 <param name="dependencyType">Type of the dependency being resolved.</param>
183 <param name="resolverKey">Key the resolver was stored under.</param>
184 <returns>The found dependency resolver.</returns>
185 </member>
186 <member name="P:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.TypeToBuild">
187 <summary>
188 The type that is to be built with the dynamic build plan.
189 </summary>
190 </member>
191 <member name="P:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanGenerationContext.ContextParameter">
192 <summary>
193 The context parameter represeting the <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderContext"/> used when the build plan is executed.
194 </summary>
195 </member>
196 <member name="T:Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanMethod">
197 <summary>
198
199 </summary>
200 <param name="context"></param>
201 </member>
202 <member name="T:Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan">
203 <summary>
204
205 </summary>
206 </member>
207 <member name="T:Microsoft.Practices.ObjectBuilder2.IBuildPlanPolicy">
208 <summary>
209 A build plan is an object that, when invoked, will create a new object
210 or fill in a given existing one. It encapsulates all the information
211 gathered by the strategies to construct a particular object.
212 </summary>
213 </member>
214 <member name="T:Microsoft.Practices.ObjectBuilder2.IBuilderPolicy">
215 <summary>
216 Represents a builder policy interface. Since there are no fixed requirements
217 for policies, it acts as a marker interface from which to derive all other
218 policy interfaces.
219 </summary>
220 </member>
221 <member name="M:Microsoft.Practices.ObjectBuilder2.IBuildPlanPolicy.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
222 <summary>
223 Creates an instance of this build plan's type, or fills
224 in the existing type if passed in.
225 </summary>
226 <param name="context">Context used to build up the object.</param>
227 </member>
228 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.#ctor(Microsoft.Practices.ObjectBuilder2.DynamicBuildPlanMethod)">
229 <summary>
230
231 </summary>
232 <param name="buildMethod"></param>
233 </member>
234 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlan.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
235 <summary>
236
237 </summary>
238 <param name="context"></param>
239 </member>
240 <member name="T:Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlanCreatorPolicy">
241 <summary>
242 An <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuildPlanCreatorPolicy"/> implementation
243 that constructs a build plan via dynamic IL emission.
244 </summary>
245 </member>
246 <member name="T:Microsoft.Practices.ObjectBuilder2.IBuildPlanCreatorPolicy">
247 <summary>
248 A <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderPolicy"/> that can create and return an <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuildPlanPolicy"/>
249 for the given build key.
250 </summary>
251 </member>
252 <member name="M:Microsoft.Practices.ObjectBuilder2.IBuildPlanCreatorPolicy.CreatePlan(Microsoft.Practices.ObjectBuilder2.IBuilderContext,Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey)">
253 <summary>
254 Create a build plan using the given context and build key.
255 </summary>
256 <param name="context">Current build context.</param>
257 <param name="buildKey">Current build key.</param>
258 <returns>The build plan.</returns>
259 </member>
260 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlanCreatorPolicy.#ctor(Microsoft.Practices.ObjectBuilder2.IStagedStrategyChain)">
261 <summary>
262 Construct a <see cref="T:Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlanCreatorPolicy"/> that
263 uses the given strategy chain to construct the build plan.
264 </summary>
265 <param name="strategies">The strategy chain.</param>
266 </member>
267 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodBuildPlanCreatorPolicy.CreatePlan(Microsoft.Practices.ObjectBuilder2.IBuilderContext,Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey)">
268 <summary>
269 Construct a build plan.
270 </summary>
271 <param name="context">The current build context.</param>
272 <param name="buildKey">The current build key.</param>
273 <returns>The created build plan.</returns>
274 </member>
275 <member name="T:Microsoft.Practices.ObjectBuilder2.DynamicMethodCallStrategy">
276 <summary>
277 A <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderStrategy"/> that generates IL to call
278 chosen methods (as specified by the current <see cref="T:Microsoft.Practices.ObjectBuilder2.IMethodSelectorPolicy"/>)
279 as part of object build up.
280 </summary>
281 </member>
282 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodCallStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
283 <summary>
284 Called during the chain of responsibility for a build operation. The
285 PreBuildUp method is called when the chain is being executed in the
286 forward direction.
287 </summary>
288 <param name="context">Context of the build operation.</param>
289 </member>
290 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodCallStrategy.SetCurrentOperationToResolvingParameter(System.String,System.String,Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
291 <summary>
292 A helper method used by the generated IL to store the current operation in the build context.
293 </summary>
294 </member>
295 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodCallStrategy.SetCurrentOperationToInvokingMethod(System.String,Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
296 <summary>
297 A helper method used by the generated IL to store the current operation in the build context.
298 </summary>
299 </member>
300 <member name="T:Microsoft.Practices.ObjectBuilder2.DynamicMethodPropertySetterStrategy">
301 <summary>
302 A <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderStrategy"/> that generates IL to resolve properties
303 on an object being built.
304 </summary>
305 </member>
306 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodPropertySetterStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
307 <summary>
308 Called during the chain of responsibility for a build operation.
309 </summary>
310 <param name="context">The context for the operation.</param>
311 </member>
312 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodPropertySetterStrategy.SetCurrentOperationToResolvingPropertyValue(System.String,Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
313 <summary>
314 A helper method used by the generated IL to store the current operation in the build context.
315 </summary>
316 </member>
317 <member name="M:Microsoft.Practices.ObjectBuilder2.DynamicMethodPropertySetterStrategy.SetCurrentOperationToSettingProperty(System.String,Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
318 <summary>
319 A helper method used by the generated IL to store the current operation in the build context.
320 </summary>
321 </member>
322 <member name="T:Microsoft.Practices.ObjectBuilder2.LazyDynamicMethodBuildPlanCreatorPolicy">
323 <summary>
324 An <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuildPlanCreatorPolicy"/> implementation
325 that constructs a build plan for creating <see cref="T:System.Lazy`1"/> objects.
326 </summary>
327 </member>
328 <member name="M:Microsoft.Practices.ObjectBuilder2.LazyDynamicMethodBuildPlanCreatorPolicy.CreatePlan(Microsoft.Practices.ObjectBuilder2.IBuilderContext,Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey)">
329 <summary>
330 Creates a build plan using the given context and build key.
331 </summary>
332 <param name="context">Current build context.</param>
333 <param name="buildKey">Current build key.</param>
334 <returns>
335 The build plan.
336 </returns>
337 </member>
338 <member name="T:Microsoft.Practices.Unity.AllClasses">
339 <summary>
340 Provides helper methods to retrieve classes from assemblies.
341 </summary>
342 </member>
343 <member name="M:Microsoft.Practices.Unity.AllClasses.FromAssemblies(System.Reflection.Assembly[])">
344 <summary>
345 Returns all visible, non-abstract classes from <paramref name="assemblies"/>.
346 </summary>
347 <param name="assemblies">The assemblies.</param>
348 <returns>All visible, non-abstract classes found in the assemblies.</returns>
349 <exception cref="T:System.ArgumentNullException"><paramref name="assemblies"/> is <see langword="null"/>.</exception>
350 <exception cref="T:System.ArgumentException"><paramref name="assemblies"/> contains <see langword="null"/> elements.</exception>
351 <remarks>All exceptions thrown while getting types from the assemblies are ignored, and the types that can be retrieved are returned.</remarks>
352 </member>
353 <member name="M:Microsoft.Practices.Unity.AllClasses.FromAssemblies(System.Boolean,System.Reflection.Assembly[])">
354 <summary>
355 Returns all visible, non-abstract classes from <paramref name="assemblies"/>, and optionally skips errors.
356 </summary>
357 <param name="skipOnError"><see langword="true"/> to skip errors; otherwise, <see langword="true"/>.</param>
358 <param name="assemblies">The assemblies.</param>
359 <returns>
360 All visible, non-abstract classes.
361 </returns>
362 <exception cref="T:System.ArgumentNullException"><paramref name="assemblies"/> is <see langword="null"/>.</exception>
363 <exception cref="T:System.ArgumentException"><paramref name="assemblies"/> contains <see langword="null"/> elements.</exception>
364 <remarks>
365 If <paramref name="skipOnError"/> is <see langword="true"/>, all exceptions thrown while getting types from the assemblies are ignored, and the types
366 that can be retrieved are returned; otherwise, the original exception is thrown.
367 </remarks>
368 </member>
369 <member name="M:Microsoft.Practices.Unity.AllClasses.FromAssemblies(System.Collections.Generic.IEnumerable{System.Reflection.Assembly},System.Boolean)">
370 <summary>
371 Returns all visible, non-abstract classes from <paramref name="assemblies"/>.
372 </summary>
373 <param name="skipOnError"><see langword="true"/> to skip errors; otherwise, <see langword="true"/>.</param>
374 <param name="assemblies">The assemblies.</param>
375 <returns>
376 All visible, non-abstract classes.
377 </returns>
378 <exception cref="T:System.ArgumentNullException"><paramref name="assemblies"/> is <see langword="null"/>.</exception>
379 <exception cref="T:System.ArgumentException"><paramref name="assemblies"/> contains <see langword="null"/> elements.</exception>
380 <remarks>
381 If <paramref name="skipOnError"/> is <see langword="true"/>, all exceptions thrown while getting types from the assemblies are ignored, and the types
382 that can be retrieved are returned; otherwise, the original exception is thrown.
383 </remarks>
384 </member>
385 <member name="M:Microsoft.Practices.Unity.AllClasses.FromApplication(System.Boolean,System.Boolean)">
386 <summary>
387 Returns all visible, non-abstract classes from all assemblies located where the application is installed.
388 </summary>
389 <param name="includeUnityAssemblies"><see langword="false"/> to include the Unity assemblies; otherwise, <see langword="false"/>. Defaults to <see langword="false"/>.</param>
390 <param name="skipOnError"><see langword="true"/> to skip errors; otherwise, <see langword="true"/>.</param>
391 <returns>
392 All visible, non-abstract classes.
393 </returns>
394 <remarks>
395 If <paramref name="skipOnError"/> is <see langword="true"/>, all exceptions thrown while loading assemblies or getting types from the assemblies
396 are ignored, and the types that can be retrieved are returned; otherwise, the original exception is thrown. These exceptions might be wrapped in a
397 <see cref="T:System.AggregateException"/>.
398 </remarks>
399 </member>
400 <member name="T:Microsoft.Practices.Unity.DuplicateTypeMappingException">
401 <summary>
402 The exception that is thrown when registering multiple types would result in an type mapping being overwritten.
403 </summary>
404 </member>
405 <member name="M:Microsoft.Practices.Unity.DuplicateTypeMappingException.#ctor(System.String,System.Type,System.Type,System.Type)">
406 <summary>
407 Initializes a new instance of the <see cref="T:Microsoft.Practices.Unity.DuplicateTypeMappingException"/> class.
408 </summary>
409 <param name="name">The name for the mapping.</param>
410 <param name="mappedFromType">The source type for the mapping.</param>
411 <param name="currentMappedToType">The type currently mapped.</param>
412 <param name="newMappedToType">The new type to map.</param>
413 </member>
414 <member name="P:Microsoft.Practices.Unity.DuplicateTypeMappingException.Name">
415 <summary>
416 Gets the name for the mapping.
417 </summary>
418 </member>
419 <member name="P:Microsoft.Practices.Unity.DuplicateTypeMappingException.MappedFromType">
420 <summary>
421 Gets the source type for the mapping.
422 </summary>
423 </member>
424 <member name="P:Microsoft.Practices.Unity.DuplicateTypeMappingException.CurrentMappedToType">
425 <summary>
426 Gets the type currently mapped.
427 </summary>
428 </member>
429 <member name="P:Microsoft.Practices.Unity.DuplicateTypeMappingException.NewMappedToType">
430 <summary>
431 Gets the new type to map.
432 </summary>
433 </member>
434 <member name="T:Microsoft.Practices.Unity.RegistrationConvention">
435 <summary>
436 Represents a set of types to register and their registration settings.
437 </summary>
438 </member>
439 <member name="M:Microsoft.Practices.Unity.RegistrationConvention.GetTypes">
440 <summary>
441 Gets types to register.
442 </summary>
443 </member>
444 <member name="M:Microsoft.Practices.Unity.RegistrationConvention.GetFromTypes">
445 <summary>
446 Gets a function to get the types that will be requested for each type to configure.
447 </summary>
448 </member>
449 <member name="M:Microsoft.Practices.Unity.RegistrationConvention.GetName">
450 <summary>
451 Gets a function to get the name to use for the registration of each type.
452 </summary>
453 </member>
454 <member name="M:Microsoft.Practices.Unity.RegistrationConvention.GetLifetimeManager">
455 <summary>
456 Gets a function to get the <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> for the registration of each type. Defaults to no lifetime management.
457 </summary>
458 <returns></returns>
459 </member>
460 <member name="M:Microsoft.Practices.Unity.RegistrationConvention.GetInjectionMembers">
461 <summary>
462 Gets a function to get the additional <see cref="T:Microsoft.Practices.Unity.InjectionMember"/> objects for the registration of each type. Defaults to no injection members.
463 </summary>
464 <returns></returns>
465 </member>
466 <member name="T:Microsoft.Practices.Unity.UnityContainerRegistrationByConventionExtensions">
467 <summary>
468 Provides a set of convenience overloads to the
469 <see cref="T:Microsoft.Practices.Unity.IUnityContainer"/> interface to support registration of multiple types.
470 </summary>
471 </member>
472 <member name="M:Microsoft.Practices.Unity.UnityContainerRegistrationByConventionExtensions.RegisterTypes(Microsoft.Practices.Unity.IUnityContainer,System.Collections.Generic.IEnumerable{System.Type},System.Func{System.Type,System.Collections.Generic.IEnumerable{System.Type}},System.Func{System.Type,System.String},System.Func{System.Type,Microsoft.Practices.Unity.LifetimeManager},System.Func{System.Type,System.Collections.Generic.IEnumerable{Microsoft.Practices.Unity.InjectionMember}},System.Boolean)">
473 <summary>
474 Registers the supplied types by using the specified rules for name, lifetime manager, injection members, and registration types.
475 </summary>
476 <param name="container">The container to configure.</param>
477 <param name="types">The types to register. The methods in the <see cref="T:Microsoft.Practices.Unity.AllClasses"/> class can be used to scan assemblies to get types, and further filtering can be performed using LINQ queries.</param>
478 <param name="getFromTypes">A function that gets the types that will be requested for each type to configure. It can be a method from the <see cref="T:Microsoft.Practices.Unity.WithMappings"/> class or a custom function. Defaults to no registration types, and registers only the supplied types.</param>
479 <param name="getName">A function that gets the name to use for the registration of each type. It can be a method from the <see cref="T:Microsoft.Practices.Unity.WithName"/> or a custom function. Defaults to no name.</param>
480 <param name="getLifetimeManager">A function that gets the <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> for the registration of each type. It can be a method from the <see cref="T:Microsoft.Practices.Unity.WithLifetime"/> class or a custom function. Defaults to no lifetime management.</param>
481 <param name="getInjectionMembers">A function that gets the additional <see cref="T:Microsoft.Practices.Unity.InjectionMember"/> objects for the registration of each type. Defaults to no injection members.</param>
482 <param name="overwriteExistingMappings"><see langword="true"/> to overwrite existing mappings; otherwise, <see langword="false"/>. Defaults to <see langword="false"/>.</param>
483 <returns>
484 The container that this method was called on.
485 </returns>
486 <exception cref="T:System.ArgumentException">A new registration would overwrite an existing mapping and <paramref name="overwriteExistingMappings"/> is <see langword="false"/>.</exception>
487 </member>
488 <member name="M:Microsoft.Practices.Unity.UnityContainerRegistrationByConventionExtensions.RegisterTypes(Microsoft.Practices.Unity.IUnityContainer,Microsoft.Practices.Unity.RegistrationConvention,System.Boolean)">
489 <summary>
490 Registers the types according to the <paramref name="convention"/>.
491 </summary>
492 <param name="container">The container to configure.</param>
493 <param name="convention">The convention to determine which types will be registered and how.</param>
494 <param name="overwriteExistingMappings"><see langword="true"/> to overwrite existing mappings; otherwise, <see langword="false"/>. Defaults to <see langword="false"/>.</param>
495 <returns>
496 The container that this method was called on.
497 </returns>
498 </member>
499 <member name="T:Microsoft.Practices.Unity.WithLifetime">
500 <summary>
501 Provides helper methods to specify the lifetime for a type with registration by convention.
502 </summary>
503 </member>
504 <member name="M:Microsoft.Practices.Unity.WithLifetime.None(System.Type)">
505 <summary>
506 Returns a <see langword="null"/> <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/>.
507 </summary>
508 <param name="type">The type.</param>
509 <returns>A lifetime manager</returns>
510 </member>
511 <member name="M:Microsoft.Practices.Unity.WithLifetime.ContainerControlled(System.Type)">
512 <summary>
513 Returns a <see cref="T:Microsoft.Practices.Unity.ContainerControlledLifetimeManager"/>.
514 </summary>
515 <param name="type">The type.</param>
516 <returns>A container controlled lifetime manager.</returns>
517 </member>
518 <member name="M:Microsoft.Practices.Unity.WithLifetime.ExternallyControlled(System.Type)">
519 <summary>
520 Returns a <see cref="T:Microsoft.Practices.Unity.ExternallyControlledLifetimeManager"/>.
521 </summary>
522 <param name="type">The type.</param>
523 <returns>An externally controlled lifetime manager.</returns>
524 </member>
525 <member name="M:Microsoft.Practices.Unity.WithLifetime.Hierarchical(System.Type)">
526 <summary>
527 Returns a <see cref="T:Microsoft.Practices.Unity.HierarchicalLifetimeManager"/>.
528 </summary>
529 <param name="type">The type.</param>
530 <returns>A hierarchical lifetime manager.</returns>
531 </member>
532 <member name="M:Microsoft.Practices.Unity.WithLifetime.PerResolve(System.Type)">
533 <summary>
534 Returns a <see cref="T:Microsoft.Practices.Unity.PerResolveLifetimeManager"/>.
535 </summary>
536 <param name="type">The type.</param>
537 <returns>A per resolve lifetime manager.</returns>
538 </member>
539 <member name="M:Microsoft.Practices.Unity.WithLifetime.Transient(System.Type)">
540 <summary>
541 Returns a <see cref="T:Microsoft.Practices.Unity.TransientLifetimeManager"/>.
542 </summary>
543 <param name="type">The type.</param>
544 <returns>A transient lifetime manager.</returns>
545 </member>
546 <member name="M:Microsoft.Practices.Unity.WithLifetime.Custom``1(System.Type)">
547 <summary>
548 Returns a <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/>.
549 </summary>
550 <typeparam name="T">The custom <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> type.</typeparam>
551 <param name="type">The type.</param>
552 <returns>
553 A lifetime manager.
554 </returns>
555 </member>
556 <member name="T:Microsoft.Practices.Unity.WithMappings">
557 <summary>
558 Provides helper methods to map types to the types interfaces to which register them.
559 </summary>
560 </member>
561 <member name="M:Microsoft.Practices.Unity.WithMappings.None(System.Type)">
562 <summary>
563 Returns no types.
564 </summary>
565 <param name="implementationType">The type to register.</param>
566 <returns>An empty enumeration.</returns>
567 </member>
568 <member name="M:Microsoft.Practices.Unity.WithMappings.FromMatchingInterface(System.Type)">
569 <summary>
570 Returns an enumeration with the interface that matches the name of <paramref name="implementationType"/>.
571 </summary>
572 <param name="implementationType">The type to register.</param>
573 <returns>An enumeration with the first interface matching the name of <paramref name="implementationType"/> (for example, if type is MyType, a matching interface is IMyType),
574 or an empty enumeration if no such interface is found.</returns>
575 </member>
576 <member name="M:Microsoft.Practices.Unity.WithMappings.FromAllInterfaces(System.Type)">
577 <summary>
578 Returns an enumeration with all the interfaces implemented by <paramref name="implementationType"/>.
579 </summary>
580 <param name="implementationType">The type to register.</param>
581 <returns>An enumeration with all the interfaces implemented by the implementation type except <see cref="T:System.IDisposable"/>.</returns>
582 </member>
583 <member name="M:Microsoft.Practices.Unity.WithMappings.FromAllInterfacesInSameAssembly(System.Type)">
584 <summary>
585 Returns an enumeration with all the interfaces implemented by <paramref name="implementationType"/> that belong to the same assembly as implementationType.
586 </summary>
587 <param name="implementationType">The type to register.</param>
588 <returns>An enumeration with all the interfaces implemented by the implementation type that belong to the same assembly.</returns>
589 </member>
590 <member name="T:Microsoft.Practices.Unity.WithName">
591 <summary>
592 Provides helper methods to get type names.
593 </summary>
594 </member>
595 <member name="M:Microsoft.Practices.Unity.WithName.TypeName(System.Type)">
596 <summary>
597 Returns the type name.
598 </summary>
599 <param name="type">The type.</param>
600 <returns>The type name.</returns>
601 </member>
602 <member name="M:Microsoft.Practices.Unity.WithName.Default(System.Type)">
603 <summary>
604 Returns null for the registration name.
605 </summary>
606 <param name="type">The type.</param>
607 <returns><see langword="null"/></returns>
608 </member>
609 <member name="T:Microsoft.Practices.Unity.Properties.Resources">
610 <summary>
611 A strongly-typed resource class, for looking up localized strings, etc.
612 </summary>
613 </member>
614 <member name="P:Microsoft.Practices.Unity.Properties.Resources.ResourceManager">
615 <summary>
616 Returns the cached ResourceManager instance used by this class.
617 </summary>
618 </member>
619 <member name="P:Microsoft.Practices.Unity.Properties.Resources.Culture">
620 <summary>
621 Overrides the current thread's CurrentUICulture property for all
622 resource lookups using this strongly typed resource class.
623 </summary>
624 </member>
625 <member name="P:Microsoft.Practices.Unity.Properties.Resources.AmbiguousInjectionConstructor">
626 <summary>
627 Looks up a localized string similar to The type {0} has multiple constructors of length {1}. Unable to disambiguate..
628 </summary>
629 </member>
630 <member name="P:Microsoft.Practices.Unity.Properties.Resources.ArgumentMustNotBeEmpty">
631 <summary>
632 Looks up a localized string similar to The provided string argument must not be empty..
633 </summary>
634 </member>
635 <member name="P:Microsoft.Practices.Unity.Properties.Resources.BuildFailedException">
636 <summary>
637 Looks up a localized string similar to The current build operation (build key {2}) failed: {3} (Strategy type {0}, index {1}).
638 </summary>
639 </member>
640 <member name="P:Microsoft.Practices.Unity.Properties.Resources.CannotConstructInterface">
641 <summary>
642 Looks up a localized string similar to The current type, {0}, is an interface and cannot be constructed. Are you missing a type mapping?.
643 </summary>
644 </member>
645 <member name="P:Microsoft.Practices.Unity.Properties.Resources.CannotExtractTypeFromBuildKey">
646 <summary>
647 Looks up a localized string similar to Cannot extract type from build key {0}..
648 </summary>
649 </member>
650 <member name="P:Microsoft.Practices.Unity.Properties.Resources.CannotInjectGenericMethod">
651 <summary>
652 Looks up a localized string similar to The method {0}.{1}({2}) is an open generic method. Open generic methods cannot be injected..
653 </summary>
654 </member>
655 <member name="P:Microsoft.Practices.Unity.Properties.Resources.CannotInjectIndexer">
656 <summary>
657 Looks up a localized string similar to The property {0} on type {1} is an indexer. Indexed properties cannot be injected..
658 </summary>
659 </member>
660 <member name="P:Microsoft.Practices.Unity.Properties.Resources.CannotInjectMethodWithOutParam">
661 <summary>
662 Looks up a localized string similar to The method {1} on type {0} has an out parameter. Injection cannot be performed..
663 </summary>
664 </member>
665 <member name="P:Microsoft.Practices.Unity.Properties.Resources.CannotInjectMethodWithOutParams">
666 <summary>
667 Looks up a localized string similar to The method {0}.{1}({2}) has at least one out parameter. Methods with out parameters cannot be injected..
668 </summary>
669 </member>
670 <member name="P:Microsoft.Practices.Unity.Properties.Resources.CannotInjectMethodWithRefParams">
671 <summary>
672 Looks up a localized string similar to The method {0}.{1}({2}) has at least one ref parameter.Methods with ref parameters cannot be injected..
673 </summary>
674 </member>
675 <member name="P:Microsoft.Practices.Unity.Properties.Resources.CannotInjectOpenGenericMethod">
676 <summary>
677 Looks up a localized string similar to The method {1} on type {0} is marked for injection, but it is an open generic method. Injection cannot be performed..
678 </summary>
679 </member>
680 <member name="P:Microsoft.Practices.Unity.Properties.Resources.CannotInjectStaticMethod">
681 <summary>
682 Looks up a localized string similar to The method {0}.{1}({2}) is static. Static methods cannot be injected..
683 </summary>
684 </member>
685 <member name="P:Microsoft.Practices.Unity.Properties.Resources.CannotResolveOpenGenericType">
686 <summary>
687 Looks up a localized string similar to The type {0} is an open generic type. An open generic type cannot be resolved..
688 </summary>
689 </member>
690 <member name="P:Microsoft.Practices.Unity.Properties.Resources.ConstructorArgumentResolveOperation">
691 <summary>
692 Looks up a localized string similar to Resolving parameter &quot;{0}&quot; of constructor {1}.
693 </summary>
694 </member>
695 <member name="P:Microsoft.Practices.Unity.Properties.Resources.ConstructorParameterResolutionFailed">
696 <summary>
697 Looks up a localized string similar to The parameter {0} could not be resolved when attempting to call constructor {1}..
698 </summary>
699 </member>
700 <member name="P:Microsoft.Practices.Unity.Properties.Resources.DuplicateTypeMappingException">
701 <summary>
702 Looks up a localized string similar to An attempt to override an existing mapping was detected for type {1} with name &quot;{0}&quot;, currently mapped to type {2}, to type {3}..
703 </summary>
704 </member>
705 <member name="P:Microsoft.Practices.Unity.Properties.Resources.ExceptionNullAssembly">
706 <summary>
707 Looks up a localized string similar to The set of assemblies contains a null element..
708 </summary>
709 </member>
710 <member name="P:Microsoft.Practices.Unity.Properties.Resources.ExceptionNullParameterValue">
711 <summary>
712 Looks up a localized string similar to Parameter type inference does not work for null values. Indicate the parameter type explicitly using a properly configured instance of the InjectionParameter or InjectionParameter&lt;T&gt; classes..
713 </summary>
714 </member>
715 <member name="P:Microsoft.Practices.Unity.Properties.Resources.InvokingConstructorOperation">
716 <summary>
717 Looks up a localized string similar to Calling constructor {0}.
718 </summary>
719 </member>
720 <member name="P:Microsoft.Practices.Unity.Properties.Resources.InvokingMethodOperation">
721 <summary>
722 Looks up a localized string similar to Calling method {0}.{1}.
723 </summary>
724 </member>
725 <member name="P:Microsoft.Practices.Unity.Properties.Resources.KeyAlreadyPresent">
726 <summary>
727 Looks up a localized string similar to An item with the given key is already present in the dictionary..
728 </summary>
729 </member>
730 <member name="P:Microsoft.Practices.Unity.Properties.Resources.LifetimeManagerInUse">
731 <summary>
732 Looks up a localized string similar to The lifetime manager is already registered. Lifetime managers cannot be reused, please create a new one..
733 </summary>
734 </member>
735 <member name="P:Microsoft.Practices.Unity.Properties.Resources.MarkerBuildPlanInvoked">
736 <summary>
737 Looks up a localized string similar to The override marker build plan policy has been invoked. This should never happen, looks like a bug in the container..
738 </summary>
739 </member>
740 <member name="P:Microsoft.Practices.Unity.Properties.Resources.MethodArgumentResolveOperation">
741 <summary>
742 Looks up a localized string similar to Resolving parameter &quot;{0}&quot; of method {1}.{2}.
743 </summary>
744 </member>
745 <member name="P:Microsoft.Practices.Unity.Properties.Resources.MethodParameterResolutionFailed">
746 <summary>
747 Looks up a localized string similar to The value for parameter &quot;{1}&quot; of method {0} could not be resolved. .
748 </summary>
749 </member>
750 <member name="P:Microsoft.Practices.Unity.Properties.Resources.MissingDependency">
751 <summary>
752 Looks up a localized string similar to Could not resolve dependency for build key {0}..
753 </summary>
754 </member>
755 <member name="P:Microsoft.Practices.Unity.Properties.Resources.MultipleInjectionConstructors">
756 <summary>
757 Looks up a localized string similar to The type {0} has multiple constructors marked with the InjectionConstructor attribute. Unable to disambiguate..
758 </summary>
759 </member>
760 <member name="P:Microsoft.Practices.Unity.Properties.Resources.MustHaveOpenGenericType">
761 <summary>
762 Looks up a localized string similar to The supplied type {0} must be an open generic type..
763 </summary>
764 </member>
765 <member name="P:Microsoft.Practices.Unity.Properties.Resources.MustHaveSameNumberOfGenericArguments">
766 <summary>
767 Looks up a localized string similar to The supplied type {0} does not have the same number of generic arguments as the target type {1}..
768 </summary>
769 </member>
770 <member name="P:Microsoft.Practices.Unity.Properties.Resources.NoConstructorFound">
771 <summary>
772 Looks up a localized string similar to The type {0} does not have an accessible constructor..
773 </summary>
774 </member>
775 <member name="P:Microsoft.Practices.Unity.Properties.Resources.NoMatchingGenericArgument">
776 <summary>
777 Looks up a localized string similar to The type {0} does not have a generic argument named &quot;{1}&quot;.
778 </summary>
779 </member>
780 <member name="P:Microsoft.Practices.Unity.Properties.Resources.NoOperationExceptionReason">
781 <summary>
782 Looks up a localized string similar to while resolving.
783 </summary>
784 </member>
785 <member name="P:Microsoft.Practices.Unity.Properties.Resources.NoSuchConstructor">
786 <summary>
787 Looks up a localized string similar to The type {0} does not have a constructor that takes the parameters ({1})..
788 </summary>
789 </member>
790 <member name="P:Microsoft.Practices.Unity.Properties.Resources.NoSuchMethod">
791 <summary>
792 Looks up a localized string similar to The type {0} does not have a public method named {1} that takes the parameters ({2})..
793 </summary>
794 </member>
795 <member name="P:Microsoft.Practices.Unity.Properties.Resources.NoSuchProperty">
796 <summary>
797 Looks up a localized string similar to The type {0} does not contain an instance property named {1}..
798 </summary>
799 </member>
800 <member name="P:Microsoft.Practices.Unity.Properties.Resources.NotAGenericType">
801 <summary>
802 Looks up a localized string similar to The type {0} is not a generic type, and you are attempting to inject a generic parameter named &quot;{1}&quot;..
803 </summary>
804 </member>
805 <member name="P:Microsoft.Practices.Unity.Properties.Resources.NotAnArrayTypeWithRankOne">
806 <summary>
807 Looks up a localized string similar to The type {0} is not an array type with rank 1, and you are attempting to use a [DependencyArray] attribute on a parameter or property with this type..
808 </summary>
809 </member>
810 <member name="P:Microsoft.Practices.Unity.Properties.Resources.OptionalDependenciesMustBeReferenceTypes">
811 <summary>
812 Looks up a localized string similar to Optional dependencies must be reference types. The type {0} is a value type..
813 </summary>
814 </member>
815 <member name="P:Microsoft.Practices.Unity.Properties.Resources.PropertyNotSettable">
816 <summary>
817 Looks up a localized string similar to The property {0} on type {1} is not settable..
818 </summary>
819 </member>
820 <member name="P:Microsoft.Practices.Unity.Properties.Resources.PropertyTypeMismatch">
821 <summary>
822 Looks up a localized string similar to The property {0} on type {1} is of type {2}, and cannot be injected with a value of type {3}..
823 </summary>
824 </member>
825 <member name="P:Microsoft.Practices.Unity.Properties.Resources.PropertyValueResolutionFailed">
826 <summary>
827 Looks up a localized string similar to The value for the property &quot;{0}&quot; could not be resolved..
828 </summary>
829 </member>
830 <member name="P:Microsoft.Practices.Unity.Properties.Resources.ProvidedStringArgMustNotBeEmpty">
831 <summary>
832 Looks up a localized string similar to The provided string argument must not be empty..
833 </summary>
834 </member>
835 <member name="P:Microsoft.Practices.Unity.Properties.Resources.ResolutionFailed">
836 <summary>
837 Looks up a localized string similar to Resolution of the dependency failed, type = &quot;{0}&quot;, name = &quot;{1}&quot;.
838 Exception occurred while: {2}.
839 Exception is: {3} - {4}
840 -----------------------------------------------
841 At the time of the exception, the container was:
842 .
843 </summary>
844 </member>
845 <member name="P:Microsoft.Practices.Unity.Properties.Resources.ResolutionTraceDetail">
846 <summary>
847 Looks up a localized string similar to Resolving {0},{1}.
848 </summary>
849 </member>
850 <member name="P:Microsoft.Practices.Unity.Properties.Resources.ResolutionWithMappingTraceDetail">
851 <summary>
852 Looks up a localized string similar to Resolving {0},{1} (mapped from {2}, {3}).
853 </summary>
854 </member>
855 <member name="P:Microsoft.Practices.Unity.Properties.Resources.ResolvingPropertyValueOperation">
856 <summary>
857 Looks up a localized string similar to Resolving value for property {0}.{1}.
858 </summary>
859 </member>
860 <member name="P:Microsoft.Practices.Unity.Properties.Resources.SelectedConstructorHasRefParameters">
861 <summary>
862 Looks up a localized string similar to The constructor {1} selected for type {0} has ref or out parameters. Such parameters are not supported for constructor injection..
863 </summary>
864 </member>
865 <member name="P:Microsoft.Practices.Unity.Properties.Resources.SettingPropertyOperation">
866 <summary>
867 Looks up a localized string similar to Setting value for property {0}.{1}.
868 </summary>
869 </member>
870 <member name="P:Microsoft.Practices.Unity.Properties.Resources.TypeIsNotConstructable">
871 <summary>
872 Looks up a localized string similar to The type {0} cannot be constructed. You must configure the container to supply this value..
873 </summary>
874 </member>
875 <member name="P:Microsoft.Practices.Unity.Properties.Resources.TypesAreNotAssignable">
876 <summary>
877 Looks up a localized string similar to The type {1} cannot be assigned to variables of type {0}..
878 </summary>
879 </member>
880 <member name="P:Microsoft.Practices.Unity.Properties.Resources.UnknownType">
881 <summary>
882 Looks up a localized string similar to &lt;unknown&gt;.
883 </summary>
884 </member>
885 <member name="T:Microsoft.Practices.Unity.Utility.TypeReflectionExtensions">
886 <summary>
887 Provides extension methods to the <see cref="T:System.Type"/> class due to the introduction
888 of <see cref="T:System.Reflection.TypeInfo"/> class in the .NET for Windows Store apps.
889 </summary>
890 </member>
891 <member name="M:Microsoft.Practices.Unity.Utility.TypeReflectionExtensions.GetConstructor(System.Type,System.Type[])">
892 <summary>
893 Returns the constructor in <paramref name="type"/> that matches the specified constructor parameter types.
894 </summary>
895 <param name="type">The type to inspect</param>
896 <param name="constructorParameters">The constructor parameter types.</param>
897 <returns>The constructor that matches the specified parameter types.</returns>
898 </member>
899 <member name="M:Microsoft.Practices.Unity.Utility.TypeReflectionExtensions.GetMethodsHierarchical(System.Type)">
900 <summary>
901 Returns the non-static declared methods of a type or its base types.
902 </summary>
903 <param name="type">The type to inspect</param>
904 <returns>An enumerable of the <see cref="T:System.Reflection.MethodInfo"/> objects.</returns>
905 </member>
906 <member name="M:Microsoft.Practices.Unity.Utility.TypeReflectionExtensions.GetMethodHierarchical(System.Type,System.String,System.Type[])">
907 <summary>
908 Returns the non-static method of a type or its based type.
909 </summary>
910 <param name="type">The type to inspect</param>
911 <param name="methodName">The name of the method to seek.</param>
912 <param name="closedParameters">The (closed) parameter type signature of the method.</param>
913 <returns>The discovered <see cref="T:System.Reflection.MethodInfo"/></returns>
914 </member>
915 <member name="M:Microsoft.Practices.Unity.Utility.TypeReflectionExtensions.GetPropertiesHierarchical(System.Type)">
916 <summary>
917 Returns the declared properties of a type or its base types.
918 </summary>
919 <param name="type">The type to inspect</param>
920 <returns>An enumerable of the <see cref="T:System.Reflection.PropertyInfo"/> objects.</returns>
921 </member>
922 <member name="M:Microsoft.Practices.Unity.Utility.TypeReflectionExtensions.ParametersMatch(System.Reflection.ParameterInfo[],System.Type[])">
923 <summary>
924 Determines if the types in a parameter set ordinally matches the set of supplied types.
925 </summary>
926 <param name="parameters"></param>
927 <param name="closedConstructorParameterTypes"></param>
928 <returns></returns>
929 </member>
930 <member name="T:Microsoft.Practices.Unity.DependencyAttribute">
931 <summary>
932 This attribute is used to mark properties and parameters as targets for injection.
933 </summary>
934 <remarks>
935 For properties, this attribute is necessary for injection to happen. For parameters,
936 it's not needed unless you want to specify additional information to control how
937 the parameter is resolved.
938 </remarks>
939 </member>
940 <member name="T:Microsoft.Practices.Unity.DependencyResolutionAttribute">
941 <summary>
942 Base class for attributes that can be placed on parameters
943 or properties to specify how to resolve the value for
944 that parameter or property.
945 </summary>
946 </member>
947 <member name="M:Microsoft.Practices.Unity.DependencyResolutionAttribute.CreateResolver(System.Type)">
948 <summary>
949 Create an instance of <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> that
950 will be used to get the value for the member this attribute is
951 applied to.
952 </summary>
953 <param name="typeToResolve">Type of parameter or property that
954 this attribute is decoration.</param>
955 <returns>The resolver object.</returns>
956 </member>
957 <member name="M:Microsoft.Practices.Unity.DependencyAttribute.#ctor">
958 <summary>
959 Create an instance of <see cref="T:Microsoft.Practices.Unity.DependencyAttribute"/> with no name.
960 </summary>
961 </member>
962 <member name="M:Microsoft.Practices.Unity.DependencyAttribute.#ctor(System.String)">
963 <summary>
964 Create an instance of <see cref="T:Microsoft.Practices.Unity.DependencyAttribute"/> with the given name.
965 </summary>
966 <param name="name">Name to use when resolving this dependency.</param>
967 </member>
968 <member name="M:Microsoft.Practices.Unity.DependencyAttribute.CreateResolver(System.Type)">
969 <summary>
970 Create an instance of <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> that
971 will be used to get the value for the member this attribute is
972 applied to.
973 </summary>
974 <param name="typeToResolve">Type of parameter or property that
975 this attribute is decoration.</param>
976 <returns>The resolver object.</returns>
977 </member>
978 <member name="P:Microsoft.Practices.Unity.DependencyAttribute.Name">
979 <summary>
980 The name specified in the constructor.
981 </summary>
982 </member>
983 <member name="T:Microsoft.Practices.Unity.InjectionConstructorAttribute">
984 <summary>
985 This attribute is used to indicate which constructor to choose when
986 the container attempts to build a type.
987 </summary>
988 </member>
989 <member name="T:Microsoft.Practices.Unity.InjectionMethodAttribute">
990 <summary>
991 This attribute is used to mark methods that should be called when
992 the container is building an object.
993 </summary>
994 </member>
995 <member name="T:Microsoft.Practices.Unity.OptionalDependencyAttribute">
996 <summary>
997 An <see cref="T:Microsoft.Practices.Unity.DependencyResolutionAttribute"/> used to mark a dependency
998 as optional - the container will try to resolve it, and return null
999 if the resolution fails rather than throw.
1000 </summary>
1001 </member>
1002 <member name="M:Microsoft.Practices.Unity.OptionalDependencyAttribute.#ctor">
1003 <summary>
1004 Construct a new <see cref="T:Microsoft.Practices.Unity.OptionalDependencyAttribute"/> object.
1005 </summary>
1006 </member>
1007 <member name="M:Microsoft.Practices.Unity.OptionalDependencyAttribute.#ctor(System.String)">
1008 <summary>
1009 Construct a new <see cref="T:Microsoft.Practices.Unity.OptionalDependencyAttribute"/> object that
1010 specifies a named dependency.
1011 </summary>
1012 <param name="name">Name of the dependency.</param>
1013 </member>
1014 <member name="M:Microsoft.Practices.Unity.OptionalDependencyAttribute.CreateResolver(System.Type)">
1015 <summary>
1016 Create an instance of <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> that
1017 will be used to get the value for the member this attribute is
1018 applied to.
1019 </summary>
1020 <param name="typeToResolve">Type of parameter or property that
1021 this attribute is decoration.</param>
1022 <returns>The resolver object.</returns>
1023 </member>
1024 <member name="P:Microsoft.Practices.Unity.OptionalDependencyAttribute.Name">
1025 <summary>
1026 Name of the dependency.
1027 </summary>
1028 </member>
1029 <member name="T:Microsoft.Practices.Unity.CompositeResolverOverride">
1030 <summary>
1031 A <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/> that composites other
1032 ResolverOverride objects. The GetResolver operation then
1033 returns the resolver from the first child override that
1034 matches the current context and request.
1035 </summary>
1036 </member>
1037 <member name="T:Microsoft.Practices.Unity.ResolverOverride">
1038 <summary>
1039 Base class for all override objects passed in the
1040 <see cref="M:Microsoft.Practices.Unity.IUnityContainer.Resolve(System.Type,System.String,Microsoft.Practices.Unity.ResolverOverride[])"/> method.
1041 </summary>
1042 </member>
1043 <member name="M:Microsoft.Practices.Unity.ResolverOverride.GetResolver(Microsoft.Practices.ObjectBuilder2.IBuilderContext,System.Type)">
1044 <summary>
1045 Return a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> that can be used to give a value
1046 for the given desired dependency.
1047 </summary>
1048 <param name="context">Current build context.</param>
1049 <param name="dependencyType">Type of dependency desired.</param>
1050 <returns>a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> object if this override applies, null if not.</returns>
1051 </member>
1052 <member name="M:Microsoft.Practices.Unity.ResolverOverride.OnType``1">
1053 <summary>
1054 Wrap this resolver in one that verifies the type of the object being built.
1055 This allows you to narrow any override down to a specific type easily.
1056 </summary>
1057 <typeparam name="T">Type to constrain the override to.</typeparam>
1058 <returns>The new override.</returns>
1059 </member>
1060 <member name="M:Microsoft.Practices.Unity.ResolverOverride.OnType(System.Type)">
1061 <summary>
1062 Wrap this resolver in one that verifies the type of the object being built.
1063 This allows you to narrow any override down to a specific type easily.
1064 </summary>
1065 <param name="typeToOverride">Type to constrain the override to.</param>
1066 <returns>The new override.</returns>
1067 </member>
1068 <member name="M:Microsoft.Practices.Unity.CompositeResolverOverride.Add(Microsoft.Practices.Unity.ResolverOverride)">
1069 <summary>
1070 Add a new <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/> to the collection
1071 that is checked.
1072 </summary>
1073 <param name="newOverride">item to add.</param>
1074 </member>
1075 <member name="M:Microsoft.Practices.Unity.CompositeResolverOverride.AddRange(System.Collections.Generic.IEnumerable{Microsoft.Practices.Unity.ResolverOverride})">
1076 <summary>
1077 Add a setof <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/>s to the collection.
1078 </summary>
1079 <param name="newOverrides">items to add.</param>
1080 </member>
1081 <member name="M:Microsoft.Practices.Unity.CompositeResolverOverride.System#Collections#IEnumerable#GetEnumerator">
1082 <summary>
1083 Returns an enumerator that iterates through a collection.
1084 </summary>
1085 <returns>
1086 An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
1087 </returns>
1088 <filterpriority>2</filterpriority>
1089 </member>
1090 <member name="M:Microsoft.Practices.Unity.CompositeResolverOverride.GetEnumerator">
1091 <summary>
1092 Returns an enumerator that iterates through the collection.
1093 </summary>
1094 <returns>
1095 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
1096 </returns>
1097 <filterpriority>1</filterpriority>
1098 </member>
1099 <member name="M:Microsoft.Practices.Unity.CompositeResolverOverride.GetResolver(Microsoft.Practices.ObjectBuilder2.IBuilderContext,System.Type)">
1100 <summary>
1101 Return a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> that can be used to give a value
1102 for the given desired dependency.
1103 </summary>
1104 <param name="context">Current build context.</param>
1105 <param name="dependencyType">Type of dependency desired.</param>
1106 <returns>a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> object if this override applies, null if not.</returns>
1107 </member>
1108 <member name="T:Microsoft.Practices.Unity.ContainerRegistration">
1109 <summary>
1110 Class that returns information about the types registered in a container.
1111 </summary>
1112 </member>
1113 <member name="P:Microsoft.Practices.Unity.ContainerRegistration.RegisteredType">
1114 <summary>
1115 The type that was passed to the <see cref="M:Microsoft.Practices.Unity.IUnityContainer.RegisterType(System.Type,System.Type,System.String,Microsoft.Practices.Unity.LifetimeManager,Microsoft.Practices.Unity.InjectionMember[])"/> method
1116 as the "from" type, or the only type if type mapping wasn't done.
1117 </summary>
1118 </member>
1119 <member name="P:Microsoft.Practices.Unity.ContainerRegistration.MappedToType">
1120 <summary>
1121 The type that this registration is mapped to. If no type mapping was done, the
1122 <see cref="P:Microsoft.Practices.Unity.ContainerRegistration.RegisteredType"/> property and this one will have the same value.
1123 </summary>
1124 </member>
1125 <member name="P:Microsoft.Practices.Unity.ContainerRegistration.Name">
1126 <summary>
1127 Name the type was registered under. Null for default registration.
1128 </summary>
1129 </member>
1130 <member name="P:Microsoft.Practices.Unity.ContainerRegistration.LifetimeManagerType">
1131 <summary>
1132 The registered lifetime manager instance.
1133 </summary>
1134 </member>
1135 <member name="P:Microsoft.Practices.Unity.ContainerRegistration.LifetimeManager">
1136 <summary>
1137 The lifetime manager for this registration.
1138 </summary>
1139 <remarks>
1140 This property will be null if this registration is for an open generic.</remarks>
1141 </member>
1142 <member name="T:Microsoft.Practices.Unity.DependencyOverride">
1143 <summary>
1144 A <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/> class that overrides
1145 the value injected whenever there is a dependency of the
1146 given type, regardless of where it appears in the object graph.
1147 </summary>
1148 </member>
1149 <member name="M:Microsoft.Practices.Unity.DependencyOverride.#ctor(System.Type,System.Object)">
1150 <summary>
1151 Create an instance of <see cref="T:Microsoft.Practices.Unity.DependencyOverride"/> to override
1152 the given type with the given value.
1153 </summary>
1154 <param name="typeToConstruct">Type of the dependency.</param>
1155 <param name="dependencyValue">Value to use.</param>
1156 </member>
1157 <member name="M:Microsoft.Practices.Unity.DependencyOverride.GetResolver(Microsoft.Practices.ObjectBuilder2.IBuilderContext,System.Type)">
1158 <summary>
1159 Return a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> that can be used to give a value
1160 for the given desired dependency.
1161 </summary>
1162 <param name="context">Current build context.</param>
1163 <param name="dependencyType">Type of dependency desired.</param>
1164 <returns>a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> object if this override applies, null if not.</returns>
1165 </member>
1166 <member name="T:Microsoft.Practices.Unity.DependencyOverride`1">
1167 <summary>
1168 A convenience version of <see cref="T:Microsoft.Practices.Unity.DependencyOverride"/> that lets you
1169 specify the dependency type using generic syntax.
1170 </summary>
1171 <typeparam name="T">Type of the dependency to override.</typeparam>
1172 </member>
1173 <member name="M:Microsoft.Practices.Unity.DependencyOverride`1.#ctor(System.Object)">
1174 <summary>
1175 Construct a new <see cref="T:Microsoft.Practices.Unity.DependencyOverride`1"/> object that will
1176 override the given dependency, and pass the given value.
1177 </summary>
1178 </member>
1179 <member name="T:Microsoft.Practices.Unity.DependencyOverrides">
1180 <summary>
1181 A convenience form of <see cref="T:Microsoft.Practices.Unity.DependencyOverride"/> that lets you
1182 specify multiple parameter overrides in one shot rather than having
1183 to construct multiple objects.
1184 </summary>
1185 <remarks>
1186 This class isn't really a collection, it just implements IEnumerable
1187 so that we get use of the nice C# collection initializer syntax.
1188 </remarks>
1189 </member>
1190 <member name="T:Microsoft.Practices.Unity.OverrideCollection`3">
1191 <summary>
1192 Base helper class for creating collections of <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/> objects
1193 for use in passing a bunch of them to the resolve call. This base class provides
1194 the mechanics needed to allow you to use the C# collection initializer syntax.
1195 </summary>
1196 <typeparam name="TOverride">Concrete type of the <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/> this class collects.</typeparam>
1197 <typeparam name="TKey">Key used to create the underlying override object.</typeparam>
1198 <typeparam name="TValue">Value that the override returns.</typeparam>
1199 </member>
1200 <member name="M:Microsoft.Practices.Unity.OverrideCollection`3.Add(`1,`2)">
1201 <summary>
1202 Add a new override to the collection with the given key and value.
1203 </summary>
1204 <param name="key">Key - for example, a parameter or property name.</param>
1205 <param name="value">Value - the value to be returned by the override.</param>
1206 </member>
1207 <member name="M:Microsoft.Practices.Unity.OverrideCollection`3.GetResolver(Microsoft.Practices.ObjectBuilder2.IBuilderContext,System.Type)">
1208 <summary>
1209 Return a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> that can be used to give a value
1210 for the given desired dependency.
1211 </summary>
1212 <param name="context">Current build context.</param>
1213 <param name="dependencyType">Type of dependency desired.</param>
1214 <returns>a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> object if this override applies, null if not.</returns>
1215 </member>
1216 <member name="M:Microsoft.Practices.Unity.OverrideCollection`3.System#Collections#IEnumerable#GetEnumerator">
1217 <summary>
1218 Returns an enumerator that iterates through a collection.
1219 </summary>
1220 <returns>
1221 An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the collection.
1222 </returns>
1223 <filterpriority>2</filterpriority>
1224 </member>
1225 <member name="M:Microsoft.Practices.Unity.OverrideCollection`3.GetEnumerator">
1226 <summary>
1227 Returns an enumerator that iterates through the collection.
1228 </summary>
1229 <returns>
1230 A <see cref="T:System.Collections.Generic.IEnumerator`1"/> that can be used to iterate through the collection.
1231 </returns>
1232 <filterpriority>1</filterpriority>
1233 </member>
1234 <member name="M:Microsoft.Practices.Unity.OverrideCollection`3.MakeOverride(`1,`2)">
1235 <summary>
1236 When implemented in derived classes, this method is called from the <see cref="M:Microsoft.Practices.Unity.OverrideCollection`3.Add(`1,`2)"/>
1237 method to create the actual <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/> objects.
1238 </summary>
1239 <param name="key">Key value to create the resolver.</param>
1240 <param name="value">Value to store in the resolver.</param>
1241 <returns>The created <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/>.</returns>
1242 </member>
1243 <member name="M:Microsoft.Practices.Unity.DependencyOverrides.MakeOverride(System.Type,System.Object)">
1244 <summary>
1245 When implemented in derived classes, this method is called from the <see cref="M:Microsoft.Practices.Unity.OverrideCollection`3.Add(`1,`2)"/>
1246 method to create the actual <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/> objects.
1247 </summary>
1248 <param name="key">Key value to create the resolver.</param>
1249 <param name="value">Value to store in the resolver.</param>
1250 <returns>The created <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/>.</returns>
1251 </member>
1252 <member name="T:Microsoft.Practices.Unity.ChildContainerCreatedEventArgs">
1253 <summary>
1254 Event argument class for the <see cref="E:Microsoft.Practices.Unity.ExtensionContext.ChildContainerCreated"/> event.
1255 </summary>
1256 </member>
1257 <member name="M:Microsoft.Practices.Unity.ChildContainerCreatedEventArgs.#ctor(Microsoft.Practices.Unity.ExtensionContext)">
1258 <summary>
1259 Construct a new <see cref="T:Microsoft.Practices.Unity.ChildContainerCreatedEventArgs"/> object with the
1260 given child container object.
1261 </summary>
1262 <param name="childContext">An <see cref="T:Microsoft.Practices.Unity.ExtensionContext"/> for the newly created child
1263 container.</param>
1264 </member>
1265 <member name="P:Microsoft.Practices.Unity.ChildContainerCreatedEventArgs.ChildContainer">
1266 <summary>
1267 The newly created child container.
1268 </summary>
1269 </member>
1270 <member name="P:Microsoft.Practices.Unity.ChildContainerCreatedEventArgs.ChildContext">
1271 <summary>
1272 An extension context for the created child container.
1273 </summary>
1274 </member>
1275 <member name="T:Microsoft.Practices.Unity.ExtensionContext">
1276 <summary>
1277 The <see cref="T:Microsoft.Practices.Unity.ExtensionContext"/> class provides the means for extension objects
1278 to manipulate the internal state of the <see cref="T:Microsoft.Practices.Unity.UnityContainer"/>.
1279 </summary>
1280 </member>
1281 <member name="M:Microsoft.Practices.Unity.ExtensionContext.RegisterNamedType(System.Type,System.String)">
1282 <summary>
1283 Store a type/name pair for later resolution.
1284 </summary>
1285 <remarks>
1286 <para>
1287 When users register type mappings (or other things) with a named key, this method
1288 allows you to register that name with the container so that when the <see cref="M:Microsoft.Practices.Unity.IUnityContainer.ResolveAll(System.Type,Microsoft.Practices.Unity.ResolverOverride[])"/>
1289 method is called, that name is included in the list that is returned.
1290 </para></remarks>
1291 <param name="t"><see cref="T:System.Type"/> to register.</param>
1292 <param name="name">Name assocated with that type.</param>
1293 </member>
1294 <member name="P:Microsoft.Practices.Unity.ExtensionContext.Container">
1295 <summary>
1296 The container that this context is associated with.
1297 </summary>
1298 <value>The <see cref="T:Microsoft.Practices.Unity.IUnityContainer"/> object.</value>
1299 </member>
1300 <member name="P:Microsoft.Practices.Unity.ExtensionContext.Strategies">
1301 <summary>
1302 The strategies this container uses.
1303 </summary>
1304 <value>The <see cref="T:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1"/> that the container uses to build objects.</value>
1305 </member>
1306 <member name="P:Microsoft.Practices.Unity.ExtensionContext.BuildPlanStrategies">
1307 <summary>
1308 The strategies this container uses to construct build plans.
1309 </summary>
1310 <value>The <see cref="T:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1"/> that this container uses when creating
1311 build plans.</value>
1312 </member>
1313 <member name="P:Microsoft.Practices.Unity.ExtensionContext.Policies">
1314 <summary>
1315 The policies this container uses.
1316 </summary>
1317 <remarks>The <see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> the that container uses to build objects.</remarks>
1318 </member>
1319 <member name="P:Microsoft.Practices.Unity.ExtensionContext.Lifetime">
1320 <summary>
1321 The <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> that this container uses.
1322 </summary>
1323 <value>The <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> is used to manage <see cref="T:System.IDisposable"/> objects that the container is managing.</value>
1324 </member>
1325 <member name="E:Microsoft.Practices.Unity.ExtensionContext.Registering">
1326 <summary>
1327 This event is raised when the <see cref="M:Microsoft.Practices.Unity.IUnityContainer.RegisterType(System.Type,System.Type,System.String,Microsoft.Practices.Unity.LifetimeManager,Microsoft.Practices.Unity.InjectionMember[])"/> method,
1328 or one of its overloads, is called.
1329 </summary>
1330 </member>
1331 <member name="E:Microsoft.Practices.Unity.ExtensionContext.RegisteringInstance">
1332 <summary>
1333 This event is raised when the <see cref="M:Microsoft.Practices.Unity.IUnityContainer.RegisterInstance(System.Type,System.String,System.Object,Microsoft.Practices.Unity.LifetimeManager)"/> method,
1334 or one of its overloads, is called.
1335 </summary>
1336 </member>
1337 <member name="E:Microsoft.Practices.Unity.ExtensionContext.ChildContainerCreated">
1338 <summary>
1339 This event is raised when the <see cref="M:Microsoft.Practices.Unity.IUnityContainer.CreateChildContainer"/> method is called, providing
1340 the newly created child container to extensions to act on as they see fit.
1341 </summary>
1342 </member>
1343 <member name="T:Microsoft.Practices.Unity.IUnityContainerExtensionConfigurator">
1344 <summary>
1345 Base interface for all extension configuration interfaces.
1346 </summary>
1347 </member>
1348 <member name="P:Microsoft.Practices.Unity.IUnityContainerExtensionConfigurator.Container">
1349 <summary>
1350 Retrieve the container instance that we are currently configuring.
1351 </summary>
1352 </member>
1353 <member name="T:Microsoft.Practices.Unity.NamedEventArgs">
1354 <summary>
1355 An EventArgs class that holds a string Name.
1356 </summary>
1357 </member>
1358 <member name="M:Microsoft.Practices.Unity.NamedEventArgs.#ctor">
1359 <summary>
1360 Create a new <see cref="T:Microsoft.Practices.Unity.NamedEventArgs"/> with a null name.
1361 </summary>
1362 </member>
1363 <member name="M:Microsoft.Practices.Unity.NamedEventArgs.#ctor(System.String)">
1364 <summary>
1365 Create a new <see cref="T:Microsoft.Practices.Unity.NamedEventArgs"/> with the given name.
1366 </summary>
1367 <param name="name">Name to store.</param>
1368 </member>
1369 <member name="P:Microsoft.Practices.Unity.NamedEventArgs.Name">
1370 <summary>
1371 The name.
1372 </summary>
1373 <value>Name used for this event arg object.</value>
1374 </member>
1375 <member name="T:Microsoft.Practices.Unity.RegisterEventArgs">
1376 <summary>
1377 Event argument class for the <see cref="E:Microsoft.Practices.Unity.ExtensionContext.Registering"/> event.
1378 </summary>
1379 </member>
1380 <member name="M:Microsoft.Practices.Unity.RegisterEventArgs.#ctor(System.Type,System.Type,System.String,Microsoft.Practices.Unity.LifetimeManager)">
1381 <summary>
1382 Create a new instance of <see cref="T:Microsoft.Practices.Unity.RegisterEventArgs"/>.
1383 </summary>
1384 <param name="typeFrom">Type to map from.</param>
1385 <param name="typeTo">Type to map to.</param>
1386 <param name="name">Name for the registration.</param>
1387 <param name="lifetimeManager"><see cref="P:Microsoft.Practices.Unity.RegisterEventArgs.LifetimeManager"/> to manage instances.</param>
1388 </member>
1389 <member name="P:Microsoft.Practices.Unity.RegisterEventArgs.TypeFrom">
1390 <summary>
1391 Type to map from.
1392 </summary>
1393 </member>
1394 <member name="P:Microsoft.Practices.Unity.RegisterEventArgs.TypeTo">
1395 <summary>
1396 Type to map to.
1397 </summary>
1398 </member>
1399 <member name="P:Microsoft.Practices.Unity.RegisterEventArgs.LifetimeManager">
1400 <summary>
1401 <see cref="P:Microsoft.Practices.Unity.RegisterEventArgs.LifetimeManager"/> to manage instances.
1402 </summary>
1403 </member>
1404 <member name="T:Microsoft.Practices.Unity.RegisterInstanceEventArgs">
1405 <summary>
1406 Event argument class for the <see cref="E:Microsoft.Practices.Unity.ExtensionContext.RegisteringInstance"/> event.
1407 </summary>
1408 </member>
1409 <member name="M:Microsoft.Practices.Unity.RegisterInstanceEventArgs.#ctor">
1410 <summary>
1411 Create a default <see cref="T:Microsoft.Practices.Unity.RegisterInstanceEventArgs"/> instance.
1412 </summary>
1413 </member>
1414 <member name="M:Microsoft.Practices.Unity.RegisterInstanceEventArgs.#ctor(System.Type,System.Object,System.String,Microsoft.Practices.Unity.LifetimeManager)">
1415 <summary>
1416 Create a <see cref="T:Microsoft.Practices.Unity.RegisterInstanceEventArgs"/> instance initialized with the given arguments.
1417 </summary>
1418 <param name="registeredType">Type of instance being registered.</param>
1419 <param name="instance">The instance object itself.</param>
1420 <param name="name">Name to register under, null if default registration.</param>
1421 <param name="lifetimeManager"><see cref="P:Microsoft.Practices.Unity.RegisterInstanceEventArgs.LifetimeManager"/> object that handles how
1422 the instance will be owned.</param>
1423 </member>
1424 <member name="P:Microsoft.Practices.Unity.RegisterInstanceEventArgs.RegisteredType">
1425 <summary>
1426 Type of instance being registered.
1427 </summary>
1428 <value>
1429 Type of instance being registered.
1430 </value>
1431 </member>
1432 <member name="P:Microsoft.Practices.Unity.RegisterInstanceEventArgs.Instance">
1433 <summary>
1434 Instance object being registered.
1435 </summary>
1436 <value>Instance object being registered</value>
1437 </member>
1438 <member name="P:Microsoft.Practices.Unity.RegisterInstanceEventArgs.LifetimeManager">
1439 <summary>
1440 <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> that controls ownership of
1441 this instance.
1442 </summary>
1443 </member>
1444 <member name="T:Microsoft.Practices.Unity.UnityContainerExtension">
1445 <summary>
1446 Base class for all <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> extension objects.
1447 </summary>
1448 </member>
1449 <member name="M:Microsoft.Practices.Unity.UnityContainerExtension.InitializeExtension(Microsoft.Practices.Unity.ExtensionContext)">
1450 <summary>
1451 The container calls this method when the extension is added.
1452 </summary>
1453 <param name="context">A <see cref="T:Microsoft.Practices.Unity.ExtensionContext"/> instance that gives the
1454 extension access to the internals of the container.</param>
1455 </member>
1456 <member name="M:Microsoft.Practices.Unity.UnityContainerExtension.Initialize">
1457 <summary>
1458 Initial the container with this extension's functionality.
1459 </summary>
1460 <remarks>
1461 When overridden in a derived class, this method will modify the given
1462 <see cref="T:Microsoft.Practices.Unity.ExtensionContext"/> by adding strategies, policies, etc. to
1463 install it's functions into the container.</remarks>
1464 </member>
1465 <member name="M:Microsoft.Practices.Unity.UnityContainerExtension.Remove">
1466 <summary>
1467 Removes the extension's functions from the container.
1468 </summary>
1469 <remarks>
1470 <para>
1471 This method is called when extensions are being removed from the container. It can be
1472 used to do things like disconnect event handlers or clean up member state. You do not
1473 need to remove strategies or policies here; the container will do that automatically.
1474 </para>
1475 <para>
1476 The default implementation of this method does nothing.</para>
1477 </remarks>
1478 </member>
1479 <member name="P:Microsoft.Practices.Unity.UnityContainerExtension.Container">
1480 <summary>
1481 The container this extension has been added to.
1482 </summary>
1483 <value>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> that this extension has been added to.</value>
1484 </member>
1485 <member name="P:Microsoft.Practices.Unity.UnityContainerExtension.Context">
1486 <summary>
1487 The <see cref="T:Microsoft.Practices.Unity.ExtensionContext"/> object used to manipulate
1488 the inner state of the container.
1489 </summary>
1490 </member>
1491 <member name="T:Microsoft.Practices.Unity.GenericParameter">
1492 <summary>
1493 A <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/> that lets you specify that
1494 an instance of a generic type parameter should be resolved.
1495 </summary>
1496 </member>
1497 <member name="T:Microsoft.Practices.Unity.GenericParameterBase">
1498 <summary>
1499 Base class for <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/> subclasses that let you specify that
1500 an instance of a generic type parameter should be resolved.
1501 </summary>
1502 </member>
1503 <member name="T:Microsoft.Practices.Unity.InjectionParameterValue">
1504 <summary>
1505 Base type for objects that are used to configure parameters for
1506 constructor or method injection, or for getting the value to
1507 be injected into a property.
1508 </summary>
1509 </member>
1510 <member name="M:Microsoft.Practices.Unity.InjectionParameterValue.MatchesType(System.Type)">
1511 <summary>
1512 Test to see if this parameter value has a matching type for the given type.
1513 </summary>
1514 <param name="t">Type to check.</param>
1515 <returns>True if this parameter value is compatible with type <paramref name="t"/>,
1516 false if not.</returns>
1517 </member>
1518 <member name="M:Microsoft.Practices.Unity.InjectionParameterValue.GetResolverPolicy(System.Type)">
1519 <summary>
1520 Return a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance that will
1521 return this types value for the parameter.
1522 </summary>
1523 <param name="typeToBuild">Type that contains the member that needs this parameter. Used
1524 to resolve open generic parameters.</param>
1525 <returns>The <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/>.</returns>
1526 </member>
1527 <member name="M:Microsoft.Practices.Unity.InjectionParameterValue.ToParameters(System.Object[])">
1528 <summary>
1529 Convert the given set of arbitrary values to a sequence of InjectionParameterValue
1530 objects. The rules are: If it's already an InjectionParameterValue, return it. If
1531 it's a Type, return a ResolvedParameter object for that type. Otherwise return
1532 an InjectionParameter object for that value.
1533 </summary>
1534 <param name="values">The values to build the sequence from.</param>
1535 <returns>The resulting converted sequence.</returns>
1536 </member>
1537 <member name="M:Microsoft.Practices.Unity.InjectionParameterValue.ToParameter(System.Object)">
1538 <summary>
1539 Convert an arbitrary value to an InjectionParameterValue object. The rules are:
1540 If it's already an InjectionParameterValue, return it. If it's a Type, return a
1541 ResolvedParameter object for that type. Otherwise return an InjectionParameter
1542 object for that value.
1543 </summary>
1544 <param name="value">The value to convert.</param>
1545 <returns>The resulting <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/>.</returns>
1546 </member>
1547 <member name="P:Microsoft.Practices.Unity.InjectionParameterValue.ParameterTypeName">
1548 <summary>
1549 Name for the type represented by this <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/>.
1550 This may be an actual type name or a generic argument name.
1551 </summary>
1552 </member>
1553 <member name="M:Microsoft.Practices.Unity.GenericParameterBase.#ctor(System.String)">
1554 <summary>
1555 Create a new <see cref="T:Microsoft.Practices.Unity.GenericParameter"/> instance that specifies
1556 that the given named generic parameter should be resolved.
1557 </summary>
1558 <param name="genericParameterName">The generic parameter name to resolve.</param>
1559 </member>
1560 <member name="M:Microsoft.Practices.Unity.GenericParameterBase.#ctor(System.String,System.String)">
1561 <summary>
1562 Create a new <see cref="T:Microsoft.Practices.Unity.GenericParameter"/> instance that specifies
1563 that the given named generic parameter should be resolved.
1564 </summary>
1565 <param name="genericParameterName">The generic parameter name to resolve.</param>
1566 <param name="resolutionKey">name to use when looking up in the container.</param>
1567 </member>
1568 <member name="M:Microsoft.Practices.Unity.GenericParameterBase.MatchesType(System.Type)">
1569 <summary>
1570 Test to see if this parameter value has a matching type for the given type.
1571 </summary>
1572 <param name="t">Type to check.</param>
1573 <returns>True if this parameter value is compatible with type <paramref name="t"/>,
1574 false if not.</returns>
1575 </member>
1576 <member name="M:Microsoft.Practices.Unity.GenericParameterBase.GetResolverPolicy(System.Type)">
1577 <summary>
1578 Return a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance that will
1579 return this types value for the parameter.
1580 </summary>
1581 <param name="typeToBuild">Type that contains the member that needs this parameter. Used
1582 to resolve open generic parameters.</param>
1583 <returns>The <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/>.</returns>
1584 </member>
1585 <member name="M:Microsoft.Practices.Unity.GenericParameterBase.DoGetResolverPolicy(System.Type,System.String)">
1586 <summary>
1587 Return a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance that will
1588 return this types value for the parameter.
1589 </summary>
1590 <param name="typeToResolve">The actual type to resolve.</param>
1591 <param name="resolutionKey">The resolution key.</param>
1592 <returns>The <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/>.</returns>
1593 </member>
1594 <member name="P:Microsoft.Practices.Unity.GenericParameterBase.ParameterTypeName">
1595 <summary>
1596 Name for the type represented by this <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/>.
1597 This may be an actual type name or a generic argument name.
1598 </summary>
1599 </member>
1600 <member name="M:Microsoft.Practices.Unity.GenericParameter.#ctor(System.String)">
1601 <summary>
1602 Create a new <see cref="T:Microsoft.Practices.Unity.GenericParameter"/> instance that specifies
1603 that the given named generic parameter should be resolved.
1604 </summary>
1605 <param name="genericParameterName">The generic parameter name to resolve.</param>
1606 </member>
1607 <member name="M:Microsoft.Practices.Unity.GenericParameter.#ctor(System.String,System.String)">
1608 <summary>
1609 Create a new <see cref="T:Microsoft.Practices.Unity.GenericParameter"/> instance that specifies
1610 that the given named generic parameter should be resolved.
1611 </summary>
1612 <param name="genericParameterName">The generic parameter name to resolve.</param>
1613 <param name="resolutionKey">name to use when looking up in the container.</param>
1614 </member>
1615 <member name="M:Microsoft.Practices.Unity.GenericParameter.DoGetResolverPolicy(System.Type,System.String)">
1616 <summary>
1617 Return a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance that will
1618 return this types value for the parameter.
1619 </summary>
1620 <param name="typeToResolve">The actual type to resolve.</param>
1621 <param name="resolutionKey">The resolution key.</param>
1622 <returns>The <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/>.</returns>
1623 </member>
1624 <member name="T:Microsoft.Practices.Unity.GenericResolvedArrayParameter">
1625 <summary>
1626 A <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/> that lets you specify that
1627 an array containing the registered instances of a generic type parameter
1628 should be resolved.
1629 </summary>
1630 </member>
1631 <member name="M:Microsoft.Practices.Unity.GenericResolvedArrayParameter.#ctor(System.String,System.Object[])">
1632 <summary>
1633 Create a new <see cref="T:Microsoft.Practices.Unity.GenericResolvedArrayParameter"/> instance that specifies
1634 that the given named generic parameter should be resolved.
1635 </summary>
1636 <param name="genericParameterName">The generic parameter name to resolve.</param>
1637 <param name="elementValues">The values for the elements, that will
1638 be converted to <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/> objects.</param>
1639 </member>
1640 <member name="M:Microsoft.Practices.Unity.GenericResolvedArrayParameter.MatchesType(System.Type)">
1641 <summary>
1642 Test to see if this parameter value has a matching type for the given type.
1643 </summary>
1644 <param name="t">Type to check.</param>
1645 <returns>True if this parameter value is compatible with type <paramref name="t"/>,
1646 false if not.</returns>
1647 <remarks>A type is considered compatible if it is an array type of rank one
1648 and its element type is a generic type parameter with a name matching this generic
1649 parameter name configured for the receiver.</remarks>
1650 </member>
1651 <member name="M:Microsoft.Practices.Unity.GenericResolvedArrayParameter.GetResolverPolicy(System.Type)">
1652 <summary>
1653 Return a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance that will
1654 return this types value for the parameter.
1655 </summary>
1656 <param name="typeToBuild">Type that contains the member that needs this parameter. Used
1657 to resolve open generic parameters.</param>
1658 <returns>The <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/>.</returns>
1659 </member>
1660 <member name="P:Microsoft.Practices.Unity.GenericResolvedArrayParameter.ParameterTypeName">
1661 <summary>
1662 Name for the type represented by this <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/>.
1663 This may be an actual type name or a generic argument name.
1664 </summary>
1665 </member>
1666 <member name="T:Microsoft.Practices.Unity.InjectedMembers">
1667 <summary>
1668 A Unity container extension that allows you to configure
1669 which constructors, properties, and methods get injected
1670 via an API rather than through attributes.
1671 </summary>
1672 </member>
1673 <member name="M:Microsoft.Practices.Unity.InjectedMembers.Initialize">
1674 <summary>
1675 Initial the container with this extension's functionality.
1676 </summary>
1677 <remarks>
1678 When overridden in a derived class, this method will modify the given
1679 <see cref="T:Microsoft.Practices.Unity.ExtensionContext"/> by adding strategies, policies, etc. to
1680 install it's functions into the container.</remarks>
1681 </member>
1682 <member name="M:Microsoft.Practices.Unity.InjectedMembers.ConfigureInjectionFor``1(Microsoft.Practices.Unity.InjectionMember[])">
1683 <summary>
1684 API to configure the injection settings for a particular type.
1685 </summary>
1686 <typeparam name="TTypeToInject">Type the injection is being configured for.</typeparam>
1687 <param name="injectionMembers">Objects containing the details on which members to inject and how.</param>
1688 <returns>This extension object.</returns>
1689 </member>
1690 <member name="M:Microsoft.Practices.Unity.InjectedMembers.ConfigureInjectionFor``1(System.String,Microsoft.Practices.Unity.InjectionMember[])">
1691 <summary>
1692 API to configure the injection settings for a particular type/name pair.
1693 </summary>
1694 <typeparam name="TTypeToInject">Type the injection is being configured for.</typeparam>
1695 <param name="name">Name of registration</param>
1696 <param name="injectionMembers">Objects containing the details on which members to inject and how.</param>
1697 <returns>This extension object.</returns>
1698 </member>
1699 <member name="M:Microsoft.Practices.Unity.InjectedMembers.ConfigureInjectionFor(System.Type,Microsoft.Practices.Unity.InjectionMember[])">
1700 <summary>
1701 API to configure the injection settings for a particular type.
1702 </summary>
1703 <param name="typeToInject">Type to configure.</param>
1704 <param name="injectionMembers">Objects containing the details on which members to inject and how.</param>
1705 <returns>This extension object.</returns>
1706 </member>
1707 <member name="M:Microsoft.Practices.Unity.InjectedMembers.ConfigureInjectionFor(System.Type,System.String,Microsoft.Practices.Unity.InjectionMember[])">
1708 <summary>
1709 API to configure the injection settings for a particular type/name pair.
1710 </summary>
1711 <param name="typeToInject">Type to configure.</param>
1712 <param name="name">Name of registration.</param>
1713 <param name="injectionMembers">Objects containing the details on which members to inject and how.</param>
1714 <returns>This extension object.</returns>
1715 </member>
1716 <member name="M:Microsoft.Practices.Unity.InjectedMembers.ConfigureInjectionFor(System.Type,System.Type,System.String,Microsoft.Practices.Unity.InjectionMember[])">
1717 <summary>
1718 API to configure the injection settings for a particular type/name pair.
1719 </summary>
1720 <param name="serviceType">Type of interface/base class being registered (may be null).</param>
1721 <param name="implementationType">Type of actual implementation class being registered.</param>
1722 <param name="name">Name of registration.</param>
1723 <param name="injectionMembers">Objects containing the details on which members to inject and how.</param>
1724 <returns>This extension object.</returns>
1725 </member>
1726 <member name="T:Microsoft.Practices.Unity.InjectionConstructor">
1727 <summary>
1728 A class that holds the collection of information
1729 for a constructor, so that the container can
1730 be configured to call this constructor.
1731 </summary>
1732 </member>
1733 <member name="T:Microsoft.Practices.Unity.InjectionMember">
1734 <summary>
1735 Base class for objects that can be used to configure what
1736 class members get injected by the container.
1737 </summary>
1738 </member>
1739 <member name="M:Microsoft.Practices.Unity.InjectionMember.AddPolicies(System.Type,Microsoft.Practices.ObjectBuilder2.IPolicyList)">
1740 <summary>
1741 Add policies to the <paramref name="policies"/> to configure the
1742 container to call this constructor with the appropriate parameter values.
1743 </summary>
1744 <param name="typeToCreate">Type to register.</param>
1745 <param name="policies">Policy list to add policies to.</param>
1746 </member>
1747 <member name="M:Microsoft.Practices.Unity.InjectionMember.AddPolicies(System.Type,System.Type,System.String,Microsoft.Practices.ObjectBuilder2.IPolicyList)">
1748 <summary>
1749 Add policies to the <paramref name="policies"/> to configure the
1750 container to call this constructor with the appropriate parameter values.
1751 </summary>
1752 <param name="serviceType">Type of interface being registered. If no interface,
1753 this will be null.</param>
1754 <param name="implementationType">Type of concrete type being registered.</param>
1755 <param name="name">Name used to resolve the type object.</param>
1756 <param name="policies">Policy list to add policies to.</param>
1757 </member>
1758 <member name="M:Microsoft.Practices.Unity.InjectionConstructor.#ctor(System.Object[])">
1759 <summary>
1760 Create a new instance of <see cref="T:Microsoft.Practices.Unity.InjectionConstructor"/> that looks
1761 for a constructor with the given set of parameters.
1762 </summary>
1763 <param name="parameterValues">The values for the parameters, that will
1764 be converted to <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/> objects.</param>
1765 </member>
1766 <member name="M:Microsoft.Practices.Unity.InjectionConstructor.AddPolicies(System.Type,System.Type,System.String,Microsoft.Practices.ObjectBuilder2.IPolicyList)">
1767 <summary>
1768 Add policies to the <paramref name="policies"/> to configure the
1769 container to call this constructor with the appropriate parameter values.
1770 </summary>
1771 <param name="serviceType">Interface registered, ignored in this implementation.</param>
1772 <param name="implementationType">Type to register.</param>
1773 <param name="name">Name used to resolve the type object.</param>
1774 <param name="policies">Policy list to add policies to.</param>
1775 </member>
1776 <member name="T:Microsoft.Practices.Unity.InjectionFactory">
1777 <summary>
1778 A class that lets you specify a factory method the container
1779 will use to create the object.
1780 </summary>
1781 <remarks>This is a significantly easier way to do the same
1782 thing the old static factory extension was used for.</remarks>
1783 </member>
1784 <member name="M:Microsoft.Practices.Unity.InjectionFactory.#ctor(System.Func{Microsoft.Practices.Unity.IUnityContainer,System.Object})">
1785 <summary>
1786 Create a new instance of <see cref="T:Microsoft.Practices.Unity.InjectionFactory"/> with
1787 the given factory function.
1788 </summary>
1789 <param name="factoryFunc">Factory function.</param>
1790 </member>
1791 <member name="M:Microsoft.Practices.Unity.InjectionFactory.#ctor(System.Func{Microsoft.Practices.Unity.IUnityContainer,System.Type,System.String,System.Object})">
1792 <summary>
1793 Create a new instance of <see cref="T:Microsoft.Practices.Unity.InjectionFactory"/> with
1794 the given factory function.
1795 </summary>
1796 <param name="factoryFunc">Factory function.</param>
1797 </member>
1798 <member name="M:Microsoft.Practices.Unity.InjectionFactory.AddPolicies(System.Type,System.Type,System.String,Microsoft.Practices.ObjectBuilder2.IPolicyList)">
1799 <summary>
1800 Add policies to the <paramref name="policies"/> to configure the
1801 container to call this constructor with the appropriate parameter values.
1802 </summary>
1803 <param name="serviceType">Type of interface being registered. If no interface,
1804 this will be null. This parameter is ignored in this implementation.</param>
1805 <param name="implementationType">Type of concrete type being registered.</param>
1806 <param name="name">Name used to resolve the type object.</param>
1807 <param name="policies">Policy list to add policies to.</param>
1808 </member>
1809 <member name="T:Microsoft.Practices.Unity.InjectionMethod">
1810 <summary>
1811 An <see cref="T:Microsoft.Practices.Unity.InjectionMember"/> that configures the
1812 container to call a method as part of buildup.
1813 </summary>
1814 </member>
1815 <member name="M:Microsoft.Practices.Unity.InjectionMethod.#ctor(System.String,System.Object[])">
1816 <summary>
1817 Create a new <see cref="T:Microsoft.Practices.Unity.InjectionMethod"/> instance which will configure
1818 the container to call the given methods with the given parameters.
1819 </summary>
1820 <param name="methodName">Name of the method to call.</param>
1821 <param name="methodParameters">Parameter values for the method.</param>
1822 </member>
1823 <member name="M:Microsoft.Practices.Unity.InjectionMethod.AddPolicies(System.Type,System.Type,System.String,Microsoft.Practices.ObjectBuilder2.IPolicyList)">
1824 <summary>
1825 Add policies to the <paramref name="policies"/> to configure the
1826 container to call this constructor with the appropriate parameter values.
1827 </summary>
1828 <param name="serviceType">Type of interface registered, ignored in this implementation.</param>
1829 <param name="implementationType">Type to register.</param>
1830 <param name="name">Name used to resolve the type object.</param>
1831 <param name="policies">Policy list to add policies to.</param>
1832 </member>
1833 <member name="M:Microsoft.Practices.Unity.InjectionMethod.MethodNameMatches(System.Reflection.MemberInfo,System.String)">
1834 <summary>
1835 A small function to handle name matching. You can override this
1836 to do things like case insensitive comparisons.
1837 </summary>
1838 <param name="targetMethod">MethodInfo for the method you're checking.</param>
1839 <param name="nameToMatch">Name of the method you're looking for.</param>
1840 <returns>True if a match, false if not.</returns>
1841 </member>
1842 <member name="T:Microsoft.Practices.Unity.InjectionParameter">
1843 <summary>
1844 A class that holds on to the given value and provides
1845 the required <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/>
1846 when the container is configured.
1847 </summary>
1848 </member>
1849 <member name="T:Microsoft.Practices.Unity.TypedInjectionValue">
1850 <summary>
1851 A base class for implementing <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/> classes
1852 that deal in explicit types.
1853 </summary>
1854 </member>
1855 <member name="M:Microsoft.Practices.Unity.TypedInjectionValue.#ctor(System.Type)">
1856 <summary>
1857 Create a new <see cref="T:Microsoft.Practices.Unity.TypedInjectionValue"/> that exposes
1858 information about the given <paramref name="parameterType"/>.
1859 </summary>
1860 <param name="parameterType">Type of the parameter.</param>
1861 </member>
1862 <member name="M:Microsoft.Practices.Unity.TypedInjectionValue.MatchesType(System.Type)">
1863 <summary>
1864 Test to see if this parameter value has a matching type for the given type.
1865 </summary>
1866 <param name="t">Type to check.</param>
1867 <returns>True if this parameter value is compatible with type <paramref name="t"/>,
1868 false if not.</returns>
1869 </member>
1870 <member name="P:Microsoft.Practices.Unity.TypedInjectionValue.ParameterType">
1871 <summary>
1872 The type of parameter this object represents.
1873 </summary>
1874 </member>
1875 <member name="P:Microsoft.Practices.Unity.TypedInjectionValue.ParameterTypeName">
1876 <summary>
1877 Name for the type represented by this <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/>.
1878 This may be an actual type name or a generic argument name.
1879 </summary>
1880 </member>
1881 <member name="M:Microsoft.Practices.Unity.InjectionParameter.#ctor(System.Object)">
1882 <summary>
1883 Create an instance of <see cref="T:Microsoft.Practices.Unity.InjectionParameter"/> that stores
1884 the given value, using the runtime type of that value as the
1885 type of the parameter.
1886 </summary>
1887 <param name="parameterValue">Value to be injected for this parameter.</param>
1888 </member>
1889 <member name="M:Microsoft.Practices.Unity.InjectionParameter.#ctor(System.Type,System.Object)">
1890 <summary>
1891 Create an instance of <see cref="T:Microsoft.Practices.Unity.InjectionParameter"/> that stores
1892 the given value, associated with the given type.
1893 </summary>
1894 <param name="parameterType">Type of the parameter.</param>
1895 <param name="parameterValue">Value of the parameter</param>
1896 </member>
1897 <member name="M:Microsoft.Practices.Unity.InjectionParameter.GetResolverPolicy(System.Type)">
1898 <summary>
1899 Return a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance that will
1900 return this types value for the parameter.
1901 </summary>
1902 <param name="typeToBuild">Type that contains the member that needs this parameter. Used
1903 to resolve open generic parameters.</param>
1904 <returns>The <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/>.</returns>
1905 </member>
1906 <member name="T:Microsoft.Practices.Unity.InjectionParameter`1">
1907 <summary>
1908 A generic version of <see cref="T:Microsoft.Practices.Unity.InjectionParameter"/> that makes it a
1909 little easier to specify the type of the parameter.
1910 </summary>
1911 <typeparam name="TParameter">Type of parameter.</typeparam>
1912 </member>
1913 <member name="M:Microsoft.Practices.Unity.InjectionParameter`1.#ctor(`0)">
1914 <summary>
1915 Create a new <see cref="T:Microsoft.Practices.Unity.InjectionParameter`1"/>.
1916 </summary>
1917 <param name="parameterValue">Value for the parameter.</param>
1918 </member>
1919 <member name="T:Microsoft.Practices.Unity.InjectionProperty">
1920 <summary>
1921 This class stores information about which properties to inject,
1922 and will configure the container accordingly.
1923 </summary>
1924 </member>
1925 <member name="M:Microsoft.Practices.Unity.InjectionProperty.#ctor(System.String)">
1926 <summary>
1927 Configure the container to inject the given property name,
1928 resolving the value via the container.
1929 </summary>
1930 <param name="propertyName">Name of the property to inject.</param>
1931 </member>
1932 <member name="M:Microsoft.Practices.Unity.InjectionProperty.#ctor(System.String,System.Object)">
1933 <summary>
1934 Configure the container to inject the given property name,
1935 using the value supplied. This value is converted to an
1936 <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/> object using the
1937 rules defined by the <see cref="M:Microsoft.Practices.Unity.InjectionParameterValue.ToParameters(System.Object[])"/>
1938 method.
1939 </summary>
1940 <param name="propertyName">Name of property to inject.</param>
1941 <param name="propertyValue">Value for property.</param>
1942 </member>
1943 <member name="M:Microsoft.Practices.Unity.InjectionProperty.AddPolicies(System.Type,System.Type,System.String,Microsoft.Practices.ObjectBuilder2.IPolicyList)">
1944 <summary>
1945 Add policies to the <paramref name="policies"/> to configure the
1946 container to call this constructor with the appropriate parameter values.
1947 </summary>
1948 <param name="serviceType">Interface being registered, ignored in this implemenation.</param>
1949 <param name="implementationType">Type to register.</param>
1950 <param name="name">Name used to resolve the type object.</param>
1951 <param name="policies">Policy list to add policies to.</param>
1952 </member>
1953 <member name="T:Microsoft.Practices.Unity.OptionalGenericParameter">
1954 <summary>
1955 A <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/> that lets you specify that
1956 an instance of a generic type parameter should be resolved, providing the <see langword="null"/>
1957 value if resolving fails.
1958 </summary>
1959 </member>
1960 <member name="M:Microsoft.Practices.Unity.OptionalGenericParameter.#ctor(System.String)">
1961 <summary>
1962 Create a new <see cref="T:Microsoft.Practices.Unity.GenericParameter"/> instance that specifies
1963 that the given named generic parameter should be resolved.
1964 </summary>
1965 <param name="genericParameterName">The generic parameter name to resolve.</param>
1966 </member>
1967 <member name="M:Microsoft.Practices.Unity.OptionalGenericParameter.#ctor(System.String,System.String)">
1968 <summary>
1969 Create a new <see cref="T:Microsoft.Practices.Unity.GenericParameter"/> instance that specifies
1970 that the given named generic parameter should be resolved.
1971 </summary>
1972 <param name="genericParameterName">The generic parameter name to resolve.</param>
1973 <param name="resolutionKey">name to use when looking up in the container.</param>
1974 </member>
1975 <member name="M:Microsoft.Practices.Unity.OptionalGenericParameter.DoGetResolverPolicy(System.Type,System.String)">
1976 <summary>
1977 Return a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance that will
1978 return this types value for the parameter.
1979 </summary>
1980 <param name="typeToResolve">The actual type to resolve.</param>
1981 <param name="resolutionKey">The resolution key.</param>
1982 <returns>The <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/>.</returns>
1983 </member>
1984 <member name="T:Microsoft.Practices.Unity.OptionalParameter">
1985 <summary>
1986 A <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/> that can be passed to
1987 <see cref="M:Microsoft.Practices.Unity.IUnityContainer.RegisterType(System.Type,System.Type,System.String,Microsoft.Practices.Unity.LifetimeManager,Microsoft.Practices.Unity.InjectionMember[])"/> to configure a
1988 parameter or property as an optional dependency.
1989 </summary>
1990 </member>
1991 <member name="M:Microsoft.Practices.Unity.OptionalParameter.#ctor(System.Type)">
1992 <summary>
1993 Construct a new <see cref="T:Microsoft.Practices.Unity.OptionalParameter"/> object that
1994 specifies the given <paramref name="type"/>.
1995 </summary>
1996 <param name="type">Type of the dependency.</param>
1997 </member>
1998 <member name="M:Microsoft.Practices.Unity.OptionalParameter.#ctor(System.Type,System.String)">
1999 <summary>
2000 Construct a new <see cref="T:Microsoft.Practices.Unity.OptionalParameter"/> object that
2001 specifies the given <paramref name="type"/> and <paramref name="name"/>.
2002 </summary>
2003 <param name="type">Type of the dependency.</param>
2004 <param name="name">Name for the dependency.</param>
2005 </member>
2006 <member name="M:Microsoft.Practices.Unity.OptionalParameter.GetResolverPolicy(System.Type)">
2007 <summary>
2008 Return a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance that will
2009 return this types value for the parameter.
2010 </summary>
2011 <param name="typeToBuild">Type that contains the member that needs this parameter. Used
2012 to resolve open generic parameters.</param>
2013 <returns>The <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/>.</returns>
2014 </member>
2015 <member name="T:Microsoft.Practices.Unity.OptionalParameter`1">
2016 <summary>
2017 A generic version of <see cref="T:Microsoft.Practices.Unity.OptionalParameter"></see> that lets you
2018 specify the type of the dependency using generics syntax.
2019 </summary>
2020 <typeparam name="T">Type of the dependency.</typeparam>
2021 </member>
2022 <member name="M:Microsoft.Practices.Unity.OptionalParameter`1.#ctor">
2023 <summary>
2024 Construct a new <see cref="T:Microsoft.Practices.Unity.OptionalParameter`1"/>.
2025 </summary>
2026 </member>
2027 <member name="M:Microsoft.Practices.Unity.OptionalParameter`1.#ctor(System.String)">
2028 <summary>
2029 Construct a new <see cref="T:Microsoft.Practices.Unity.OptionalParameter`1"/> with the given
2030 <paramref name="name"/>.
2031 </summary>
2032 <param name="name">Name of the dependency.</param>
2033 </member>
2034 <member name="T:Microsoft.Practices.Unity.ResolvedArrayParameter">
2035 <summary>
2036 A class that stores a type, and generates a
2037 resolver object that resolves all the named instances or the
2038 type registered in a container.
2039 </summary>
2040 </member>
2041 <member name="M:Microsoft.Practices.Unity.ResolvedArrayParameter.#ctor(System.Type,System.Object[])">
2042 <summary>
2043 Construct a new <see cref="T:Microsoft.Practices.Unity.ResolvedArrayParameter"/> that
2044 resolves to the given element type and collection of element values.
2045 </summary>
2046 <param name="elementType">The type of elements to resolve.</param>
2047 <param name="elementValues">The values for the elements, that will
2048 be converted to <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/> objects.</param>
2049 </member>
2050 <member name="M:Microsoft.Practices.Unity.ResolvedArrayParameter.#ctor(System.Type,System.Type,System.Object[])">
2051 <summary>
2052 Construct a new <see cref="T:Microsoft.Practices.Unity.ResolvedArrayParameter"/> that
2053 resolves to the given array and element types and collection of element values.
2054 </summary>
2055 <param name="arrayParameterType">The type for the array of elements to resolve.</param>
2056 <param name="elementType">The type of elements to resolve.</param>
2057 <param name="elementValues">The values for the elements, that will
2058 be converted to <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/> objects.</param>
2059 </member>
2060 <member name="M:Microsoft.Practices.Unity.ResolvedArrayParameter.GetResolverPolicy(System.Type)">
2061 <summary>
2062 Return a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance that will
2063 return this types value for the parameter.
2064 </summary>
2065 <param name="typeToBuild">Type that contains the member that needs this parameter. Used
2066 to resolve open generic parameters.</param>
2067 <returns>The <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/>.</returns>
2068 </member>
2069 <member name="T:Microsoft.Practices.Unity.ResolvedArrayParameter`1">
2070 <summary>
2071 A generic version of <see cref="T:Microsoft.Practices.Unity.ResolvedArrayParameter"/> for convenience
2072 when creating them by hand.
2073 </summary>
2074 <typeparam name="TElement">Type of the elements for the array of the parameter.</typeparam>
2075 </member>
2076 <member name="M:Microsoft.Practices.Unity.ResolvedArrayParameter`1.#ctor(System.Object[])">
2077 <summary>
2078 Construct a new <see cref="T:Microsoft.Practices.Unity.ResolvedArrayParameter`1"/> that
2079 resolves to the given element generic type with the given element values.
2080 </summary>
2081 <param name="elementValues">The values for the elements, that will
2082 be converted to <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/> objects.</param>
2083 </member>
2084 <member name="T:Microsoft.Practices.Unity.ResolvedParameter">
2085 <summary>
2086 A class that stores a name and type, and generates a
2087 resolver object that resolves the parameter via the
2088 container.
2089 </summary>
2090 </member>
2091 <member name="M:Microsoft.Practices.Unity.ResolvedParameter.#ctor(System.Type)">
2092 <summary>
2093 Construct a new <see cref="T:Microsoft.Practices.Unity.ResolvedParameter"/> that
2094 resolves to the given type.
2095 </summary>
2096 <param name="parameterType">Type of this parameter.</param>
2097 </member>
2098 <member name="M:Microsoft.Practices.Unity.ResolvedParameter.#ctor(System.Type,System.String)">
2099 <summary>
2100 Construct a new <see cref="T:Microsoft.Practices.Unity.ResolvedParameter"/> that
2101 resolves the given type and name.
2102 </summary>
2103 <param name="parameterType">Type of this parameter.</param>
2104 <param name="name">Name to use when resolving parameter.</param>
2105 </member>
2106 <member name="M:Microsoft.Practices.Unity.ResolvedParameter.GetResolverPolicy(System.Type)">
2107 <summary>
2108 Return a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance that will
2109 return this types value for the parameter.
2110 </summary>
2111 <param name="typeToBuild">Type that contains the member that needs this parameter. Used
2112 to resolve open generic parameters.</param>
2113 <returns>The <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/>.</returns>
2114 </member>
2115 <member name="T:Microsoft.Practices.Unity.ResolvedParameter`1">
2116 <summary>
2117 A generic version of <see cref="T:Microsoft.Practices.Unity.ResolvedParameter"/> for convenience
2118 when creating them by hand.
2119 </summary>
2120 <typeparam name="TParameter">Type of the parameter</typeparam>
2121 </member>
2122 <member name="M:Microsoft.Practices.Unity.ResolvedParameter`1.#ctor">
2123 <summary>
2124 Create a new <see cref="T:Microsoft.Practices.Unity.ResolvedParameter`1"/> for the given
2125 generic type and the default name.
2126 </summary>
2127 </member>
2128 <member name="M:Microsoft.Practices.Unity.ResolvedParameter`1.#ctor(System.String)">
2129 <summary>
2130 Create a new <see cref="T:Microsoft.Practices.Unity.ResolvedParameter`1"/> for the given
2131 generic type and name.
2132 </summary>
2133 <param name="name">Name to use to resolve this parameter.</param>
2134 </member>
2135 <member name="T:Microsoft.Practices.Unity.IUnityContainer">
2136 <summary>
2137 Interface defining the behavior of the Unity dependency injection container.
2138 </summary>
2139 </member>
2140 <member name="M:Microsoft.Practices.Unity.IUnityContainer.RegisterType(System.Type,System.Type,System.String,Microsoft.Practices.Unity.LifetimeManager,Microsoft.Practices.Unity.InjectionMember[])">
2141 <summary>
2142 Register a type mapping with the container, where the created instances will use
2143 the given <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/>.
2144 </summary>
2145 <param name="from"><see cref="T:System.Type"/> that will be requested.</param>
2146 <param name="to"><see cref="T:System.Type"/> that will actually be returned.</param>
2147 <param name="name">Name to use for registration, null if a default registration.</param>
2148 <param name="lifetimeManager">The <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> that controls the lifetime
2149 of the returned instance.</param>
2150 <param name="injectionMembers">Injection configuration objects.</param>
2151 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
2152 </member>
2153 <member name="M:Microsoft.Practices.Unity.IUnityContainer.RegisterInstance(System.Type,System.String,System.Object,Microsoft.Practices.Unity.LifetimeManager)">
2154 <summary>
2155 Register an instance with the container.
2156 </summary>
2157 <remarks>
2158 <para>
2159 Instance registration is much like setting a type as a singleton, except that instead
2160 of the container creating the instance the first time it is requested, the user
2161 creates the instance ahead of type and adds that instance to the container.
2162 </para>
2163 </remarks>
2164 <param name="t">Type of instance to register (may be an implemented interface instead of the full type).</param>
2165 <param name="instance">Object to returned.</param>
2166 <param name="name">Name for registration.</param>
2167 <param name="lifetime">
2168 <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> object that controls how this instance will be managed by the container.</param>
2169 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
2170 </member>
2171 <member name="M:Microsoft.Practices.Unity.IUnityContainer.Resolve(System.Type,System.String,Microsoft.Practices.Unity.ResolverOverride[])">
2172 <summary>
2173 Resolve an instance of the requested type with the given name from the container.
2174 </summary>
2175 <param name="t"><see cref="T:System.Type"/> of object to get from the container.</param>
2176 <param name="name">Name of the object to retrieve.</param>
2177 <param name="resolverOverrides">Any overrides for the resolve call.</param>
2178 <returns>The retrieved object.</returns>
2179 </member>
2180 <member name="M:Microsoft.Practices.Unity.IUnityContainer.ResolveAll(System.Type,Microsoft.Practices.Unity.ResolverOverride[])">
2181 <summary>
2182 Return instances of all registered types requested.
2183 </summary>
2184 <remarks>
2185 <para>
2186 This method is useful if you've registered multiple types with the same
2187 <see cref="T:System.Type"/> but different names.
2188 </para>
2189 <para>
2190 Be aware that this method does NOT return an instance for the default (unnamed) registration.
2191 </para>
2192 </remarks>
2193 <param name="t">The type requested.</param>
2194 <param name="resolverOverrides">Any overrides for the resolve calls.</param>
2195 <returns>Set of objects of type <paramref name="t"/>.</returns>
2196 </member>
2197 <member name="M:Microsoft.Practices.Unity.IUnityContainer.BuildUp(System.Type,System.Object,System.String,Microsoft.Practices.Unity.ResolverOverride[])">
2198 <summary>
2199 Run an existing object through the container and perform injection on it.
2200 </summary>
2201 <remarks>
2202 <para>
2203 This method is useful when you don't control the construction of an
2204 instance (ASP.NET pages or objects created via XAML, for instance)
2205 but you still want properties and other injection performed.
2206 </para></remarks>
2207 <param name="t"><see cref="T:System.Type"/> of object to perform injection on.</param>
2208 <param name="existing">Instance to build up.</param>
2209 <param name="name">name to use when looking up the typemappings and other configurations.</param>
2210 <param name="resolverOverrides">Any overrides for the resolve calls.</param>
2211 <returns>The resulting object. By default, this will be <paramref name="existing"/>, but
2212 container extensions may add things like automatic proxy creation which would
2213 cause this to return a different object (but still type compatible with <paramref name="t"/>).</returns>
2214 </member>
2215 <member name="M:Microsoft.Practices.Unity.IUnityContainer.Teardown(System.Object)">
2216 <summary>
2217 Run an existing object through the container, and clean it up.
2218 </summary>
2219 <param name="o">The object to tear down.</param>
2220 </member>
2221 <member name="M:Microsoft.Practices.Unity.IUnityContainer.AddExtension(Microsoft.Practices.Unity.UnityContainerExtension)">
2222 <summary>
2223 Add an extension object to the container.
2224 </summary>
2225 <param name="extension"><see cref="T:Microsoft.Practices.Unity.UnityContainerExtension"/> to add.</param>
2226 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
2227 </member>
2228 <member name="M:Microsoft.Practices.Unity.IUnityContainer.Configure(System.Type)">
2229 <summary>
2230 Resolve access to a configuration interface exposed by an extension.
2231 </summary>
2232 <remarks>Extensions can expose configuration interfaces as well as adding
2233 strategies and policies to the container. This method walks the list of
2234 added extensions and returns the first one that implements the requested type.
2235 </remarks>
2236 <param name="configurationInterface"><see cref="T:System.Type"/> of configuration interface required.</param>
2237 <returns>The requested extension's configuration interface, or null if not found.</returns>
2238 </member>
2239 <member name="M:Microsoft.Practices.Unity.IUnityContainer.RemoveAllExtensions">
2240 <summary>
2241 Remove all installed extensions from this container.
2242 </summary>
2243 <remarks>
2244 <para>
2245 This method removes all extensions from the container, including the default ones
2246 that implement the out-of-the-box behavior. After this method, if you want to use
2247 the container again you will need to either readd the default extensions or replace
2248 them with your own.
2249 </para>
2250 <para>
2251 The registered instances and singletons that have already been set up in this container
2252 do not get removed.
2253 </para>
2254 </remarks>
2255 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
2256 </member>
2257 <member name="M:Microsoft.Practices.Unity.IUnityContainer.CreateChildContainer">
2258 <summary>
2259 Create a child container.
2260 </summary>
2261 <remarks>
2262 A child container shares the parent's configuration, but can be configured with different
2263 settings or lifetime.</remarks>
2264 <returns>The new child container.</returns>
2265 </member>
2266 <member name="P:Microsoft.Practices.Unity.IUnityContainer.Parent">
2267 <summary>
2268 The parent of this container.
2269 </summary>
2270 <value>The parent container, or null if this container doesn't have one.</value>
2271 </member>
2272 <member name="P:Microsoft.Practices.Unity.IUnityContainer.Registrations">
2273 <summary>
2274 Get a sequence of <see cref="T:Microsoft.Practices.Unity.ContainerRegistration"/> that describe the current state
2275 of the container.
2276 </summary>
2277 </member>
2278 <member name="T:Microsoft.Practices.Unity.ContainerControlledLifetimeManager">
2279 <summary>
2280 A <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> that holds onto the instance given to it.
2281 When the <see cref="T:Microsoft.Practices.Unity.ContainerControlledLifetimeManager"/> is disposed,
2282 the instance is disposed with it.
2283 </summary>
2284 </member>
2285 <member name="T:Microsoft.Practices.Unity.SynchronizedLifetimeManager">
2286 <summary>
2287 Base class for Lifetime managers which need to synchronize calls to
2288 <see cref="M:Microsoft.Practices.Unity.SynchronizedLifetimeManager.GetValue"/>.
2289 </summary>
2290 <remarks>
2291 <para>
2292 The purpose of this class is to provide a basic implementation of the lifetime manager synchronization pattern.
2293 </para>
2294 <para>
2295 Calls to the <see cref="M:Microsoft.Practices.Unity.SynchronizedLifetimeManager.GetValue"/> method of a <see cref="T:Microsoft.Practices.Unity.SynchronizedLifetimeManager"/>
2296 instance acquire a lock, and if the instance has not been initialized with a value yet the lock will only be released
2297 when such an initialization takes place by calling the <see cref="M:Microsoft.Practices.Unity.SynchronizedLifetimeManager.SetValue(System.Object)"/> method or if
2298 the build request which resulted in the call to the GetValue method fails.
2299 </para>
2300 </remarks>
2301 <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/>
2302 </member>
2303 <member name="T:Microsoft.Practices.Unity.LifetimeManager">
2304 <summary>
2305 Base class for Lifetime managers - classes that control how
2306 and when instances are created by the Unity container.
2307 </summary>
2308 </member>
2309 <member name="T:Microsoft.Practices.ObjectBuilder2.ILifetimePolicy">
2310 <summary>
2311 A <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderPolicy"/> that controls how instances are
2312 persisted and recovered from an external store. Used to implement
2313 things like singletons and per-http-request lifetime.
2314 </summary>
2315 </member>
2316 <member name="M:Microsoft.Practices.ObjectBuilder2.ILifetimePolicy.GetValue">
2317 <summary>
2318 Retrieve a value from the backing store associated with this Lifetime policy.
2319 </summary>
2320 <returns>the object desired, or null if no such object is currently stored.</returns>
2321 </member>
2322 <member name="M:Microsoft.Practices.ObjectBuilder2.ILifetimePolicy.SetValue(System.Object)">
2323 <summary>
2324 Stores the given value into backing store for retrieval later.
2325 </summary>
2326 <param name="newValue">The object to store.</param>
2327 </member>
2328 <member name="M:Microsoft.Practices.ObjectBuilder2.ILifetimePolicy.RemoveValue">
2329 <summary>
2330 Remove the value this lifetime policy is managing from backing store.
2331 </summary>
2332 </member>
2333 <member name="M:Microsoft.Practices.Unity.LifetimeManager.GetValue">
2334 <summary>
2335 Retrieve a value from the backing store associated with this Lifetime policy.
2336 </summary>
2337 <returns>the object desired, or null if no such object is currently stored.</returns>
2338 </member>
2339 <member name="M:Microsoft.Practices.Unity.LifetimeManager.SetValue(System.Object)">
2340 <summary>
2341 Stores the given value into backing store for retrieval later.
2342 </summary>
2343 <param name="newValue">The object being stored.</param>
2344 </member>
2345 <member name="M:Microsoft.Practices.Unity.LifetimeManager.RemoveValue">
2346 <summary>
2347 Remove the given object from backing store.
2348 </summary>
2349 </member>
2350 <member name="T:Microsoft.Practices.ObjectBuilder2.IRequiresRecovery">
2351 <summary>
2352 This interface provides a hook for the builder context to
2353 implement error recovery when a builder strategy throws
2354 an exception. Since we can't get try/finally blocks onto
2355 the call stack for later stages in the chain, we instead
2356 add these objects to the context. If there's an exception,
2357 all the current IRequiresRecovery instances will have
2358 their Recover methods called.
2359 </summary>
2360 </member>
2361 <member name="M:Microsoft.Practices.ObjectBuilder2.IRequiresRecovery.Recover">
2362 <summary>
2363 A method that does whatever is needed to clean up
2364 as part of cleaning up after an exception.
2365 </summary>
2366 <remarks>
2367 Don't do anything that could throw in this method,
2368 it will cause later recover operations to get skipped
2369 and play real havoc with the stack trace.
2370 </remarks>
2371 </member>
2372 <member name="M:Microsoft.Practices.Unity.SynchronizedLifetimeManager.GetValue">
2373 <summary>
2374 Retrieve a value from the backing store associated with this Lifetime policy.
2375 </summary>
2376 <returns>the object desired, or null if no such object is currently stored.</returns>
2377 <remarks>Calls to this method acquire a lock which is released only if a non-null value
2378 has been set for the lifetime manager.</remarks>
2379 </member>
2380 <member name="M:Microsoft.Practices.Unity.SynchronizedLifetimeManager.SynchronizedGetValue">
2381 <summary>
2382 Performs the actual retrieval of a value from the backing store associated
2383 with this Lifetime policy.
2384 </summary>
2385 <returns>the object desired, or null if no such object is currently stored.</returns>
2386 <remarks>This method is invoked by <see cref="M:Microsoft.Practices.Unity.SynchronizedLifetimeManager.GetValue"/>
2387 after it has acquired its lock.</remarks>
2388 </member>
2389 <member name="M:Microsoft.Practices.Unity.SynchronizedLifetimeManager.SetValue(System.Object)">
2390 <summary>
2391 Stores the given value into backing store for retrieval later.
2392 </summary>
2393 <param name="newValue">The object being stored.</param>
2394 <remarks>Setting a value will attempt to release the lock acquired by
2395 <see cref="M:Microsoft.Practices.Unity.SynchronizedLifetimeManager.GetValue"/>.</remarks>
2396 </member>
2397 <member name="M:Microsoft.Practices.Unity.SynchronizedLifetimeManager.SynchronizedSetValue(System.Object)">
2398 <summary>
2399 Performs the actual storage of the given value into backing store for retrieval later.
2400 </summary>
2401 <param name="newValue">The object being stored.</param>
2402 <remarks>This method is invoked by <see cref="M:Microsoft.Practices.Unity.SynchronizedLifetimeManager.SetValue(System.Object)"/>
2403 before releasing its lock.</remarks>
2404 </member>
2405 <member name="M:Microsoft.Practices.Unity.SynchronizedLifetimeManager.RemoveValue">
2406 <summary>
2407 Remove the given object from backing store.
2408 </summary>
2409 </member>
2410 <member name="M:Microsoft.Practices.Unity.SynchronizedLifetimeManager.Recover">
2411 <summary>
2412 A method that does whatever is needed to clean up
2413 as part of cleaning up after an exception.
2414 </summary>
2415 <remarks>
2416 Don't do anything that could throw in this method,
2417 it will cause later recover operations to get skipped
2418 and play real havoc with the stack trace.
2419 </remarks>
2420 </member>
2421 <member name="M:Microsoft.Practices.Unity.ContainerControlledLifetimeManager.SynchronizedGetValue">
2422 <summary>
2423 Retrieve a value from the backing store associated with this Lifetime policy.
2424 </summary>
2425 <returns>the object desired, or null if no such object is currently stored.</returns>
2426 </member>
2427 <member name="M:Microsoft.Practices.Unity.ContainerControlledLifetimeManager.SynchronizedSetValue(System.Object)">
2428 <summary>
2429 Stores the given value into backing store for retrieval later.
2430 </summary>
2431 <param name="newValue">The object being stored.</param>
2432 </member>
2433 <member name="M:Microsoft.Practices.Unity.ContainerControlledLifetimeManager.RemoveValue">
2434 <summary>
2435 Remove the given object from backing store.
2436 </summary>
2437 </member>
2438 <member name="M:Microsoft.Practices.Unity.ContainerControlledLifetimeManager.Dispose">
2439 <summary>
2440 Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
2441 </summary>
2442 <filterpriority>2</filterpriority>
2443 </member>
2444 <member name="M:Microsoft.Practices.Unity.ContainerControlledLifetimeManager.Dispose(System.Boolean)">
2445 <summary>
2446 Standard Dispose pattern implementation. Not needed, but it keeps FxCop happy.
2447 </summary>
2448 <param name="disposing">Always true, since we don't have a finalizer.</param>
2449 </member>
2450 <member name="T:Microsoft.Practices.Unity.ExternallyControlledLifetimeManager">
2451 <summary>
2452 A <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> that holds a weak reference to
2453 it's managed instance.
2454 </summary>
2455 </member>
2456 <member name="M:Microsoft.Practices.Unity.ExternallyControlledLifetimeManager.GetValue">
2457 <summary>
2458 Retrieve a value from the backing store associated with this Lifetime policy.
2459 </summary>
2460 <returns>the object desired, or null if no such object is currently stored.</returns>
2461 </member>
2462 <member name="M:Microsoft.Practices.Unity.ExternallyControlledLifetimeManager.SetValue(System.Object)">
2463 <summary>
2464 Stores the given value into backing store for retrieval later.
2465 </summary>
2466 <param name="newValue">The object being stored.</param>
2467 </member>
2468 <member name="M:Microsoft.Practices.Unity.ExternallyControlledLifetimeManager.RemoveValue">
2469 <summary>
2470 Remove the given object from backing store.
2471 </summary>
2472 </member>
2473 <member name="T:Microsoft.Practices.Unity.HierarchicalLifetimeManager">
2474 <summary>
2475 A special lifetime manager which works like <see cref="T:Microsoft.Practices.Unity.ContainerControlledLifetimeManager"/>,
2476 except that in the presence of child containers, each child gets it's own instance
2477 of the object, instead of sharing one in the common parent.
2478 </summary>
2479 </member>
2480 <member name="T:Microsoft.Practices.Unity.LifetimeManagerFactory">
2481 <summary>
2482 An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeFactoryPolicy"/> that
2483 creates instances of the type of the given Lifetime Manager
2484 by resolving them through the container.
2485 </summary>
2486 </member>
2487 <member name="T:Microsoft.Practices.ObjectBuilder2.ILifetimeFactoryPolicy">
2488 <summary>
2489 A builder policy used to create lifetime policy instances.
2490 Used by the LifetimeStrategy when instantiating open
2491 generic types.
2492 </summary>
2493 </member>
2494 <member name="M:Microsoft.Practices.ObjectBuilder2.ILifetimeFactoryPolicy.CreateLifetimePolicy">
2495 <summary>
2496 Create a new instance of <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimePolicy"/>.
2497 </summary>
2498 <returns>The new instance.</returns>
2499 </member>
2500 <member name="P:Microsoft.Practices.ObjectBuilder2.ILifetimeFactoryPolicy.LifetimeType">
2501 <summary>
2502 The type of Lifetime manager that will be created by this factory.
2503 </summary>
2504 </member>
2505 <member name="M:Microsoft.Practices.Unity.LifetimeManagerFactory.#ctor(Microsoft.Practices.Unity.ExtensionContext,System.Type)">
2506 <summary>
2507 Create a new <see cref="T:Microsoft.Practices.Unity.LifetimeManagerFactory"/> that will
2508 return instances of the given type, creating them by
2509 resolving through the container.
2510 </summary>
2511 <param name="containerContext">Container to resolve with.</param>
2512 <param name="lifetimeType">Type of LifetimeManager to create.</param>
2513 </member>
2514 <member name="M:Microsoft.Practices.Unity.LifetimeManagerFactory.CreateLifetimePolicy">
2515 <summary>
2516 Create a new instance of <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimePolicy"/>.
2517 </summary>
2518 <returns>The new instance.</returns>
2519 </member>
2520 <member name="P:Microsoft.Practices.Unity.LifetimeManagerFactory.LifetimeType">
2521 <summary>
2522 The type of Lifetime manager that will be created by this factory.
2523 </summary>
2524 </member>
2525 <member name="T:Microsoft.Practices.Unity.PerResolveLifetimeManager">
2526 <summary>
2527 This is a custom lifetime manager that acts like <see cref="T:Microsoft.Practices.Unity.TransientLifetimeManager"/>,
2528 but also provides a signal to the default build plan, marking the type so that
2529 instances are reused across the build up object graph.
2530 </summary>
2531 </member>
2532 <member name="M:Microsoft.Practices.Unity.PerResolveLifetimeManager.#ctor">
2533 <summary>
2534 Construct a new <see cref="T:Microsoft.Practices.Unity.PerResolveLifetimeManager"/> object that does not
2535 itself manage an instance.
2536 </summary>
2537 </member>
2538 <member name="M:Microsoft.Practices.Unity.PerResolveLifetimeManager.#ctor(System.Object)">
2539 <summary>
2540 Construct a new <see cref="T:Microsoft.Practices.Unity.PerResolveLifetimeManager"/> object that stores the
2541 give value. This value will be returned by <see cref="M:Microsoft.Practices.Unity.LifetimeManager.GetValue"/>
2542 but is not stored in the lifetime manager, nor is the value disposed.
2543 This Lifetime manager is intended only for internal use, which is why the
2544 normal <see cref="M:Microsoft.Practices.Unity.LifetimeManager.SetValue(System.Object)"/> method is not used here.
2545 </summary>
2546 <param name="value">Value to store.</param>
2547 </member>
2548 <member name="M:Microsoft.Practices.Unity.PerResolveLifetimeManager.GetValue">
2549 <summary>
2550 Retrieve a value from the backing store associated with this Lifetime policy.
2551 </summary>
2552 <returns>the object desired, or null if no such object is currently stored.</returns>
2553 </member>
2554 <member name="M:Microsoft.Practices.Unity.PerResolveLifetimeManager.SetValue(System.Object)">
2555 <summary>
2556 Stores the given value into backing store for retrieval later. In this class,
2557 this is a noop, since it has special hooks down in the guts.
2558 </summary>
2559 <param name="newValue">The object being stored.</param>
2560 </member>
2561 <member name="M:Microsoft.Practices.Unity.PerResolveLifetimeManager.RemoveValue">
2562 <summary>
2563 Remove the given object from backing store. Noop in this class.
2564 </summary>
2565 </member>
2566 <member name="T:Microsoft.Practices.Unity.TransientLifetimeManager">
2567 <summary>
2568 An <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> implementation that does nothing,
2569 thus ensuring that instances are created new every time.
2570 </summary>
2571 </member>
2572 <member name="M:Microsoft.Practices.Unity.TransientLifetimeManager.GetValue">
2573 <summary>
2574 Retrieve a value from the backing store associated with this Lifetime policy.
2575 </summary>
2576 <returns>the object desired, or null if no such object is currently stored.</returns>
2577 </member>
2578 <member name="M:Microsoft.Practices.Unity.TransientLifetimeManager.SetValue(System.Object)">
2579 <summary>
2580 Stores the given value into backing store for retrieval later.
2581 </summary>
2582 <param name="newValue">The object being stored.</param>
2583 </member>
2584 <member name="M:Microsoft.Practices.Unity.TransientLifetimeManager.RemoveValue">
2585 <summary>
2586 Remove the given object from backing store.
2587 </summary>
2588 </member>
2589 <member name="T:Microsoft.Practices.Unity.ArrayResolutionStrategy">
2590 <summary>
2591 This strategy implements the logic that will call container.ResolveAll
2592 when an array parameter is detected.
2593 </summary>
2594 </member>
2595 <member name="M:Microsoft.Practices.Unity.ArrayResolutionStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
2596 <summary>
2597 Do the PreBuildUp stage of construction. This is where the actual work is performed.
2598 </summary>
2599 <param name="context">Current build context.</param>
2600 </member>
2601 <member name="T:Microsoft.Practices.Unity.ObjectBuilder.DefaultUnityConstructorSelectorPolicy">
2602 <summary>
2603 An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IConstructorSelectorPolicy"/> that is
2604 aware of the build keys used by the Unity container.
2605 </summary>
2606 </member>
2607 <member name="T:Microsoft.Practices.ObjectBuilder2.ConstructorSelectorPolicyBase`1">
2608 <summary>
2609 Base class that provides an implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IConstructorSelectorPolicy"/>
2610 which lets you override how the parameter resolvers are created.
2611 </summary>
2612 </member>
2613 <member name="T:Microsoft.Practices.ObjectBuilder2.IConstructorSelectorPolicy">
2614 <summary>
2615 A <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderPolicy"/> that, when implemented,
2616 will determine which constructor to call from the build plan.
2617 </summary>
2618 </member>
2619 <member name="M:Microsoft.Practices.ObjectBuilder2.IConstructorSelectorPolicy.SelectConstructor(Microsoft.Practices.ObjectBuilder2.IBuilderContext,Microsoft.Practices.ObjectBuilder2.IPolicyList)">
2620 <summary>
2621 Choose the constructor to call for the given type.
2622 </summary>
2623 <param name="context">Current build context</param>
2624 <param name="resolverPolicyDestination">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to add any
2625 generated resolver objects into.</param>
2626 <returns>The chosen constructor.</returns>
2627 </member>
2628 <member name="M:Microsoft.Practices.ObjectBuilder2.ConstructorSelectorPolicyBase`1.SelectConstructor(Microsoft.Practices.ObjectBuilder2.IBuilderContext,Microsoft.Practices.ObjectBuilder2.IPolicyList)">
2629 <summary>
2630 Choose the constructor to call for the given type.
2631 </summary>
2632 <param name="context">Current build context</param>
2633 <param name="resolverPolicyDestination">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to add any
2634 generated resolver objects into.</param>
2635 <returns>The chosen constructor.</returns>
2636 </member>
2637 <member name="M:Microsoft.Practices.ObjectBuilder2.ConstructorSelectorPolicyBase`1.CreateResolver(System.Reflection.ParameterInfo)">
2638 <summary>
2639 Create a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance for the given
2640 <see cref="T:System.Reflection.ParameterInfo"/>.
2641 </summary>
2642 <param name="parameter">Parameter to create the resolver for.</param>
2643 <returns>The resolver object.</returns>
2644 </member>
2645 <member name="M:Microsoft.Practices.ObjectBuilder2.ConstructorSelectorPolicyBase`1.ConstructorLengthComparer.Compare(System.Reflection.ConstructorInfo,System.Reflection.ConstructorInfo)">
2646 <summary>
2647 Compares two objects and returns a value indicating whether one is less than, equal to, or greater than the other.
2648 </summary>
2649
2650 <returns>
2651 Value Condition Less than zerox is less than y.Zerox equals y.Greater than zerox is greater than y.
2652 </returns>
2653
2654 <param name="y">The second object to compare.</param>
2655 <param name="x">The first object to compare.</param>
2656 </member>
2657 <member name="M:Microsoft.Practices.Unity.ObjectBuilder.DefaultUnityConstructorSelectorPolicy.CreateResolver(System.Reflection.ParameterInfo)">
2658 <summary>
2659 Create a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance for the given
2660 <see cref="T:System.Reflection.ParameterInfo"/>.
2661 </summary>
2662 <remarks>
2663 This implementation looks for the Unity <see cref="T:Microsoft.Practices.Unity.DependencyAttribute"/> on the
2664 parameter and uses it to create an instance of <see cref="T:Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy"/>
2665 for this parameter.</remarks>
2666 <param name="parameter">Parameter to create the resolver for.</param>
2667 <returns>The resolver object.</returns>
2668 </member>
2669 <member name="T:Microsoft.Practices.Unity.ObjectBuilder.DefaultUnityMethodSelectorPolicy">
2670 <summary>
2671 An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IMethodSelectorPolicy"/> that is aware
2672 of the build keys used by the Unity container.
2673 </summary>
2674 </member>
2675 <member name="T:Microsoft.Practices.ObjectBuilder2.MethodSelectorPolicyBase`1">
2676 <summary>
2677 Base class that provides an implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IMethodSelectorPolicy"/>
2678 which lets you override how the parameter resolvers are created.
2679 </summary>
2680 <typeparam name="TMarkerAttribute">Attribute that marks methods that should
2681 be called.</typeparam>
2682 </member>
2683 <member name="T:Microsoft.Practices.ObjectBuilder2.IMethodSelectorPolicy">
2684 <summary>
2685 An <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderPolicy"/> that will examine the given
2686 types and return a sequence of <see cref="T:System.Reflection.MethodInfo"/> objects
2687 that should be called as part of building the object.
2688 </summary>
2689 </member>
2690 <member name="M:Microsoft.Practices.ObjectBuilder2.IMethodSelectorPolicy.SelectMethods(Microsoft.Practices.ObjectBuilder2.IBuilderContext,Microsoft.Practices.ObjectBuilder2.IPolicyList)">
2691 <summary>
2692 Return the sequence of methods to call while building the target object.
2693 </summary>
2694 <param name="context">Current build context.</param>
2695 <param name="resolverPolicyDestination">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to add any
2696 generated resolver objects into.</param>
2697 <returns>Sequence of methods to call.</returns>
2698 </member>
2699 <member name="M:Microsoft.Practices.ObjectBuilder2.MethodSelectorPolicyBase`1.SelectMethods(Microsoft.Practices.ObjectBuilder2.IBuilderContext,Microsoft.Practices.ObjectBuilder2.IPolicyList)">
2700 <summary>
2701 Return the sequence of methods to call while building the target object.
2702 </summary>
2703 <param name="context">Current build context.</param>
2704 <param name="resolverPolicyDestination">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to add any
2705 generated resolver objects into.</param>
2706 <returns>Sequence of methods to call.</returns>
2707 </member>
2708 <member name="M:Microsoft.Practices.ObjectBuilder2.MethodSelectorPolicyBase`1.CreateResolver(System.Reflection.ParameterInfo)">
2709 <summary>
2710 Create a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance for the given
2711 <see cref="T:System.Reflection.ParameterInfo"/>.
2712 </summary>
2713 <param name="parameter">Parameter to create the resolver for.</param>
2714 <returns>The resolver object.</returns>
2715 </member>
2716 <member name="M:Microsoft.Practices.Unity.ObjectBuilder.DefaultUnityMethodSelectorPolicy.CreateResolver(System.Reflection.ParameterInfo)">
2717 <summary>
2718 Create a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance for the given
2719 <see cref="T:System.Reflection.ParameterInfo"/>.
2720 </summary>
2721 <param name="parameter">Parameter to create the resolver for.</param>
2722 <returns>The resolver object.</returns>
2723 </member>
2724 <member name="T:Microsoft.Practices.Unity.ObjectBuilder.DefaultUnityPropertySelectorPolicy">
2725 <summary>
2726 An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IPropertySelectorPolicy"/> that is aware of
2727 the build keys used by the unity container.
2728 </summary>
2729 </member>
2730 <member name="T:Microsoft.Practices.ObjectBuilder2.PropertySelectorBase`1">
2731 <summary>
2732 Base class that provides an implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IPropertySelectorPolicy"/>
2733 which lets you override how the parameter resolvers are created.
2734 </summary>
2735 </member>
2736 <member name="T:Microsoft.Practices.ObjectBuilder2.IPropertySelectorPolicy">
2737 <summary>
2738 An <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderPolicy"/> that returns a sequence
2739 of properties that should be injected for the given type.
2740 </summary>
2741 </member>
2742 <member name="M:Microsoft.Practices.ObjectBuilder2.IPropertySelectorPolicy.SelectProperties(Microsoft.Practices.ObjectBuilder2.IBuilderContext,Microsoft.Practices.ObjectBuilder2.IPolicyList)">
2743 <summary>
2744 Returns sequence of properties on the given type that
2745 should be set as part of building that object.
2746 </summary>
2747 <param name="context">Current build context.</param>
2748 <param name="resolverPolicyDestination">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to add any
2749 generated resolver objects into.</param>
2750 <returns>Sequence of <see cref="T:System.Reflection.PropertyInfo"/> objects
2751 that contain the properties to set.</returns>
2752 </member>
2753 <member name="M:Microsoft.Practices.ObjectBuilder2.PropertySelectorBase`1.SelectProperties(Microsoft.Practices.ObjectBuilder2.IBuilderContext,Microsoft.Practices.ObjectBuilder2.IPolicyList)">
2754 <summary>
2755 Returns sequence of properties on the given type that
2756 should be set as part of building that object.
2757 </summary>
2758 <param name="context">Current build context.</param>
2759 <param name="resolverPolicyDestination">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to add any
2760 generated resolver objects into.</param>
2761 <returns>Sequence of <see cref="T:System.Reflection.PropertyInfo"/> objects
2762 that contain the properties to set.</returns>
2763 </member>
2764 <member name="M:Microsoft.Practices.ObjectBuilder2.PropertySelectorBase`1.CreateResolver(System.Reflection.PropertyInfo)">
2765 <summary>
2766 Create a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> for the given
2767 property.
2768 </summary>
2769 <param name="property">Property to create resolver for.</param>
2770 <returns>The resolver object.</returns>
2771 </member>
2772 <member name="M:Microsoft.Practices.Unity.ObjectBuilder.DefaultUnityPropertySelectorPolicy.CreateResolver(System.Reflection.PropertyInfo)">
2773 <summary>
2774 Create a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> for the given
2775 property.
2776 </summary>
2777 <param name="property">Property to create resolver for.</param>
2778 <returns>The resolver object.</returns>
2779 </member>
2780 <member name="T:Microsoft.Practices.Unity.HierarchicalLifetimeStrategy">
2781 <summary>
2782 A strategy that handles Hierarchical lifetimes across a set of parent/child
2783 containers.
2784 </summary>
2785 </member>
2786 <member name="M:Microsoft.Practices.Unity.HierarchicalLifetimeStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
2787 <summary>
2788 Called during the chain of responsibility for a build operation. The
2789 PreBuildUp method is called when the chain is being executed in the
2790 forward direction.
2791 </summary>
2792 <param name="context">Context of the build operation.</param>
2793 </member>
2794 <member name="T:Microsoft.Practices.Unity.ObjectBuilder.LiteralValueDependencyResolverPolicy">
2795 <summary>
2796 A <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> implementation that returns
2797 the value set in the constructor.
2798 </summary>
2799 </member>
2800 <member name="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy">
2801 <summary>
2802 A <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderPolicy"/> that is used at build plan execution time
2803 to resolve a dependent value.
2804 </summary>
2805 </member>
2806 <member name="M:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
2807 <summary>
2808 Get the value for a dependency.
2809 </summary>
2810 <param name="context">Current build context.</param>
2811 <returns>The value for the dependency.</returns>
2812 </member>
2813 <member name="M:Microsoft.Practices.Unity.ObjectBuilder.LiteralValueDependencyResolverPolicy.#ctor(System.Object)">
2814 <summary>
2815 Create a new instance of <see cref="T:Microsoft.Practices.Unity.ObjectBuilder.LiteralValueDependencyResolverPolicy"/>
2816 which will return the given value when resolved.
2817 </summary>
2818 <param name="dependencyValue">The value to return.</param>
2819 </member>
2820 <member name="M:Microsoft.Practices.Unity.ObjectBuilder.LiteralValueDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
2821 <summary>
2822 Get the value for a dependency.
2823 </summary>
2824 <param name="context">Current build context.</param>
2825 <returns>The value for the dependency.</returns>
2826 </member>
2827 <member name="T:Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy">
2828 <summary>
2829 An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> that stores a
2830 type and name, and at resolution time puts them together into a
2831 <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/>.
2832 </summary>
2833 </member>
2834 <member name="M:Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.#ctor(System.Type,System.String)">
2835 <summary>
2836 Create an instance of <see cref="T:Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy"/>
2837 with the given type and name.
2838 </summary>
2839 <param name="type">The type.</param>
2840 <param name="name">The name (may be null).</param>
2841 </member>
2842 <member name="M:Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
2843 <summary>
2844 Resolve the value for a dependency.
2845 </summary>
2846 <param name="context">Current build context.</param>
2847 <returns>The value for the dependency.</returns>
2848 </member>
2849 <member name="P:Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Type">
2850 <summary>
2851 The type that this resolver resolves.
2852 </summary>
2853 </member>
2854 <member name="P:Microsoft.Practices.Unity.ObjectBuilder.NamedTypeDependencyResolverPolicy.Name">
2855 <summary>
2856 The name that this resolver resolves.
2857 </summary>
2858 </member>
2859 <member name="T:Microsoft.Practices.Unity.OptionalDependencyResolverPolicy">
2860 <summary>
2861 A <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> that will attempt to
2862 resolve a value, and return null if it cannot rather than throwing.
2863 </summary>
2864 </member>
2865 <member name="M:Microsoft.Practices.Unity.OptionalDependencyResolverPolicy.#ctor(System.Type,System.String)">
2866 <summary>
2867 Construct a new <see cref="T:Microsoft.Practices.Unity.OptionalDependencyResolverPolicy"/> object
2868 that will attempt to resolve the given name and type from the container.
2869 </summary>
2870 <param name="type">Type to resolve. Must be a reference type.</param>
2871 <param name="name">Name to resolve with.</param>
2872 </member>
2873 <member name="M:Microsoft.Practices.Unity.OptionalDependencyResolverPolicy.#ctor(System.Type)">
2874 <summary>
2875 Construct a new <see cref="T:Microsoft.Practices.Unity.OptionalDependencyResolverPolicy"/> object
2876 that will attempt to resolve the given type from the container.
2877 </summary>
2878 <param name="type">Type to resolve. Must be a reference type.</param>
2879 </member>
2880 <member name="M:Microsoft.Practices.Unity.OptionalDependencyResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
2881 <summary>
2882 Get the value for a dependency.
2883 </summary>
2884 <param name="context">Current build context.</param>
2885 <returns>The value for the dependency.</returns>
2886 </member>
2887 <member name="P:Microsoft.Practices.Unity.OptionalDependencyResolverPolicy.DependencyType">
2888 <summary>
2889 Type this resolver will resolve.
2890 </summary>
2891 </member>
2892 <member name="P:Microsoft.Practices.Unity.OptionalDependencyResolverPolicy.Name">
2893 <summary>
2894 Name this resolver will resolve.
2895 </summary>
2896 </member>
2897 <member name="T:Microsoft.Practices.Unity.ResolvedArrayWithElementsResolverPolicy">
2898 <summary>
2899 An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> that resolves to
2900 to an array populated with the values that result from resolving other instances
2901 of <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/>.
2902 </summary>
2903 </member>
2904 <member name="M:Microsoft.Practices.Unity.ResolvedArrayWithElementsResolverPolicy.#ctor(System.Type,Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy[])">
2905 <summary>
2906 Create an instance of <see cref="T:Microsoft.Practices.Unity.ResolvedArrayWithElementsResolverPolicy"/>
2907 with the given type and a collection of <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/>
2908 instances to use when populating the result.
2909 </summary>
2910 <param name="elementType">The type.</param>
2911 <param name="elementPolicies">The resolver policies to use when populating an array.</param>
2912 </member>
2913 <member name="M:Microsoft.Practices.Unity.ResolvedArrayWithElementsResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
2914 <summary>
2915 Resolve the value for a dependency.
2916 </summary>
2917 <param name="context">Current build context.</param>
2918 <returns>An array pupulated with the results of resolving the resolver policies.</returns>
2919 </member>
2920 <member name="T:Microsoft.Practices.Unity.ObjectBuilder.SpecifiedConstructorSelectorPolicy">
2921 <summary>
2922 An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IConstructorSelectorPolicy"/> that selects
2923 the given constructor and creates the appropriate resolvers to call it with
2924 the specified parameters.
2925 </summary>
2926 </member>
2927 <member name="M:Microsoft.Practices.Unity.ObjectBuilder.SpecifiedConstructorSelectorPolicy.#ctor(System.Reflection.ConstructorInfo,Microsoft.Practices.Unity.InjectionParameterValue[])">
2928 <summary>
2929 Create an instance of <see cref="T:Microsoft.Practices.Unity.ObjectBuilder.SpecifiedConstructorSelectorPolicy"/> that
2930 will return the given constructor, being passed the given injection values
2931 as parameters.
2932 </summary>
2933 <param name="ctor">The constructor to call.</param>
2934 <param name="parameterValues">Set of <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/> objects
2935 that describes how to obtain the values for the constructor parameters.</param>
2936 </member>
2937 <member name="M:Microsoft.Practices.Unity.ObjectBuilder.SpecifiedConstructorSelectorPolicy.SelectConstructor(Microsoft.Practices.ObjectBuilder2.IBuilderContext,Microsoft.Practices.ObjectBuilder2.IPolicyList)">
2938 <summary>
2939 Choose the constructor to call for the given type.
2940 </summary>
2941 <param name="context">Current build context</param>
2942 <param name="resolverPolicyDestination">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to add any
2943 generated resolver objects into.</param>
2944 <returns>The chosen constructor.</returns>
2945 </member>
2946 <member name="T:Microsoft.Practices.Unity.ObjectBuilder.SpecifiedMemberSelectorHelper">
2947 <summary>
2948 Helper class for implementing selector policies that need to
2949 set up dependency resolver policies.
2950 </summary>
2951 </member>
2952 <member name="M:Microsoft.Practices.Unity.ObjectBuilder.SpecifiedMemberSelectorHelper.AddParameterResolvers(System.Type,Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Collections.Generic.IEnumerable{Microsoft.Practices.Unity.InjectionParameterValue},Microsoft.Practices.ObjectBuilder2.SelectedMemberWithParameters)">
2953 <summary>
2954 Add dependency resolvers to the parameter set.
2955 </summary>
2956 <param name="typeToBuild">Type that's currently being built (used to resolve open generics).</param>
2957 <param name="policies">PolicyList to add the resolvers to.</param>
2958 <param name="parameterValues">Objects supplying the dependency resolvers.</param>
2959 <param name="result">Result object to store the keys in.</param>
2960 </member>
2961 <member name="T:Microsoft.Practices.Unity.ObjectBuilder.SpecifiedMethodsSelectorPolicy">
2962 <summary>
2963 A <see cref="T:Microsoft.Practices.ObjectBuilder2.IMethodSelectorPolicy"/> implementation that calls the specific
2964 methods with the given parameters.
2965 </summary>
2966 </member>
2967 <member name="M:Microsoft.Practices.Unity.ObjectBuilder.SpecifiedMethodsSelectorPolicy.AddMethodAndParameters(System.Reflection.MethodInfo,System.Collections.Generic.IEnumerable{Microsoft.Practices.Unity.InjectionParameterValue})">
2968 <summary>
2969 Add the given method and parameter collection to the list of methods
2970 that will be returned when the selector's <see cref="M:Microsoft.Practices.ObjectBuilder2.IMethodSelectorPolicy.SelectMethods(Microsoft.Practices.ObjectBuilder2.IBuilderContext,Microsoft.Practices.ObjectBuilder2.IPolicyList)"/>
2971 method is called.
2972 </summary>
2973 <param name="method">Method to call.</param>
2974 <param name="parameters">sequence of <see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/> objects
2975 that describe how to create the method parameter values.</param>
2976 </member>
2977 <member name="M:Microsoft.Practices.Unity.ObjectBuilder.SpecifiedMethodsSelectorPolicy.SelectMethods(Microsoft.Practices.ObjectBuilder2.IBuilderContext,Microsoft.Practices.ObjectBuilder2.IPolicyList)">
2978 <summary>
2979 Return the sequence of methods to call while building the target object.
2980 </summary>
2981 <param name="context">Current build context.</param>
2982 <param name="resolverPolicyDestination">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to add any
2983 generated resolver objects into.</param>
2984 <returns>Sequence of methods to call.</returns>
2985 </member>
2986 <member name="T:Microsoft.Practices.Unity.ObjectBuilder.SpecifiedPropertiesSelectorPolicy">
2987 <summary>
2988 An implemnetation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IPropertySelectorPolicy"/> which returns
2989 the set of specific properties that the selector was configured with.
2990 </summary>
2991 </member>
2992 <member name="M:Microsoft.Practices.Unity.ObjectBuilder.SpecifiedPropertiesSelectorPolicy.AddPropertyAndValue(System.Reflection.PropertyInfo,Microsoft.Practices.Unity.InjectionParameterValue)">
2993 <summary>
2994 Add a property that will be par of the set returned when the
2995 <see cref="M:Microsoft.Practices.Unity.ObjectBuilder.SpecifiedPropertiesSelectorPolicy.SelectProperties(Microsoft.Practices.ObjectBuilder2.IBuilderContext,Microsoft.Practices.ObjectBuilder2.IPolicyList)"/> is called.
2996 </summary>
2997 <param name="property">The property to set.</param>
2998 <param name="value"><see cref="T:Microsoft.Practices.Unity.InjectionParameterValue"/> object describing
2999 how to create the value to inject.</param>
3000 </member>
3001 <member name="M:Microsoft.Practices.Unity.ObjectBuilder.SpecifiedPropertiesSelectorPolicy.SelectProperties(Microsoft.Practices.ObjectBuilder2.IBuilderContext,Microsoft.Practices.ObjectBuilder2.IPolicyList)">
3002 <summary>
3003 Returns sequence of properties on the given type that
3004 should be set as part of building that object.
3005 </summary>
3006 <param name="context">Current build context.</param>
3007 <param name="resolverPolicyDestination">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to add any
3008 generated resolver objects into.</param>
3009 <returns>Sequence of <see cref="T:System.Reflection.PropertyInfo"/> objects
3010 that contain the properties to set.</returns>
3011 </member>
3012 <member name="T:Microsoft.Practices.Unity.ObjectBuilder.UnityBuildStage">
3013 <summary>
3014 The build stages we use in the Unity container
3015 strategy pipeline.
3016 </summary>
3017 </member>
3018 <member name="F:Microsoft.Practices.Unity.ObjectBuilder.UnityBuildStage.Setup">
3019 <summary>
3020 First stage. By default, nothing happens here.
3021 </summary>
3022 </member>
3023 <member name="F:Microsoft.Practices.Unity.ObjectBuilder.UnityBuildStage.TypeMapping">
3024 <summary>
3025 Second stage. Type mapping occurs here.
3026 </summary>
3027 </member>
3028 <member name="F:Microsoft.Practices.Unity.ObjectBuilder.UnityBuildStage.Lifetime">
3029 <summary>
3030 Third stage. lifetime managers are checked here,
3031 and if they're available the rest of the pipeline is skipped.
3032 </summary>
3033 </member>
3034 <member name="F:Microsoft.Practices.Unity.ObjectBuilder.UnityBuildStage.PreCreation">
3035 <summary>
3036 Fourth stage. Reflection over constructors, properties, etc. is
3037 performed here.
3038 </summary>
3039 </member>
3040 <member name="F:Microsoft.Practices.Unity.ObjectBuilder.UnityBuildStage.Creation">
3041 <summary>
3042 Fifth stage. Instance creation happens here.
3043 </summary>
3044 </member>
3045 <member name="F:Microsoft.Practices.Unity.ObjectBuilder.UnityBuildStage.Initialization">
3046 <summary>
3047 Sixth stage. Property sets and method injection happens here.
3048 </summary>
3049 </member>
3050 <member name="F:Microsoft.Practices.Unity.ObjectBuilder.UnityBuildStage.PostInitialization">
3051 <summary>
3052 Seventh and final stage. By default, nothing happens here.
3053 </summary>
3054 </member>
3055 <member name="T:Microsoft.Practices.ObjectBuilder2.BuilderContext">
3056 <summary>
3057 Represents the context in which a build-up or tear-down operation runs.
3058 </summary>
3059 </member>
3060 <member name="T:Microsoft.Practices.ObjectBuilder2.IBuilderContext">
3061 <summary>
3062 Represents the context in which a build-up or tear-down operation runs.
3063 </summary>
3064 </member>
3065 <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilderContext.AddResolverOverrides(System.Collections.Generic.IEnumerable{Microsoft.Practices.Unity.ResolverOverride})">
3066 <summary>
3067 Add a new set of resolver override objects to the current build operation.
3068 </summary>
3069 <param name="newOverrides"><see cref="T:Microsoft.Practices.Unity.ResolverOverride"/> objects to add.</param>
3070 </member>
3071 <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilderContext.GetOverriddenResolver(System.Type)">
3072 <summary>
3073 Get a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> object for the given <paramref name="dependencyType"/>
3074 or null if that dependency hasn't been overridden.
3075 </summary>
3076 <param name="dependencyType">Type of the dependency.</param>
3077 <returns>Resolver to use, or null if no override matches for the current operation.</returns>
3078 </member>
3079 <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey)">
3080 <summary>
3081 A convenience method to do a new buildup operation on an existing context.
3082 </summary>
3083 <param name="newBuildKey">Key to use to build up.</param>
3084 <returns>Created object.</returns>
3085 </member>
3086 <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey,System.Action{Microsoft.Practices.ObjectBuilder2.IBuilderContext})">
3087 <summary>
3088 A convenience method to do a new buildup operation on an existing context. This
3089 overload allows you to specify extra policies which will be in effect for the duration
3090 of the build.
3091 </summary>
3092 <param name="newBuildKey">Key defining what to build up.</param>
3093 <param name="childCustomizationBlock">A delegate that takes a <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderContext"/>. This
3094 is invoked with the new child context before the build up process starts. This gives callers
3095 the opportunity to customize the context for the build process.</param>
3096 <returns>Created object.</returns>
3097 </member>
3098 <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.Strategies">
3099 <summary>
3100 Gets the head of the strategy chain.
3101 </summary>
3102 <returns>
3103 The strategy that's first in the chain; returns null if there are no
3104 strategies in the chain.
3105 </returns>
3106 </member>
3107 <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.Lifetime">
3108 <summary>
3109 Gets the <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> associated with the build.
3110 </summary>
3111 <value>
3112 The <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> associated with the build.
3113 </value>
3114 </member>
3115 <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.OriginalBuildKey">
3116 <summary>
3117 Gets the original build key for the build operation.
3118 </summary>
3119 <value>
3120 The original build key for the build operation.
3121 </value>
3122 </member>
3123 <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.BuildKey">
3124 <summary>
3125 Get the current build key for the current build operation.
3126 </summary>
3127 </member>
3128 <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.PersistentPolicies">
3129 <summary>
3130 The set of policies that were passed into this context.
3131 </summary>
3132 <remarks>This returns the policies passed into the context.
3133 Policies added here will remain after buildup completes.</remarks>
3134 <value>The persistent policies for the current context.</value>
3135 </member>
3136 <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.Policies">
3137 <summary>
3138 Gets the policies for the current context.
3139 </summary>
3140 <remarks>Any policies added to this object are transient
3141 and will be erased at the end of the buildup.</remarks>
3142 <value>
3143 The policies for the current context.
3144 </value>
3145 </member>
3146 <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.RecoveryStack">
3147 <summary>
3148 Gets the collection of <see cref="T:Microsoft.Practices.ObjectBuilder2.IRequiresRecovery"/> objects
3149 that need to execute in event of an exception.
3150 </summary>
3151 </member>
3152 <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.Existing">
3153 <summary>
3154 The current object being built up or torn down.
3155 </summary>
3156 <value>
3157 The current object being manipulated by the build operation. May
3158 be null if the object hasn't been created yet.</value>
3159 </member>
3160 <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.BuildComplete">
3161 <summary>
3162 Flag indicating if the build operation should continue.
3163 </summary>
3164 <value>true means that building should not call any more
3165 strategies, false means continue to the next strategy.</value>
3166 </member>
3167 <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.CurrentOperation">
3168 <summary>
3169 An object representing what is currently being done in the
3170 build chain. Used to report back errors if there's a failure.
3171 </summary>
3172 </member>
3173 <member name="P:Microsoft.Practices.ObjectBuilder2.IBuilderContext.ChildContext">
3174 <summary>
3175 The build context used to resolve a dependency during the build operation represented by this context.
3176 </summary>
3177 </member>
3178 <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderContext.#ctor">
3179 <summary>
3180 Initialize a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderContext"/> class.
3181 </summary>
3182 </member>
3183 <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderContext.#ctor(Microsoft.Practices.ObjectBuilder2.IStrategyChain,Microsoft.Practices.ObjectBuilder2.ILifetimeContainer,Microsoft.Practices.ObjectBuilder2.IPolicyList,Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey,System.Object)">
3184 <summary>
3185 Initialize a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderContext"/> class with a <see cref="T:Microsoft.Practices.ObjectBuilder2.IStrategyChain"/>,
3186 <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/>, <see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> and the
3187 build key used to start this build operation.
3188 </summary>
3189 <param name="chain">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IStrategyChain"/> to use for this context.</param>
3190 <param name="lifetime">The <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> to use for this context.</param>
3191 <param name="policies">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to use for this context.</param>
3192 <param name="originalBuildKey">Build key to start building.</param>
3193 <param name="existing">The existing object to build up.</param>
3194 </member>
3195 <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderContext.#ctor(Microsoft.Practices.ObjectBuilder2.IStrategyChain,Microsoft.Practices.ObjectBuilder2.ILifetimeContainer,Microsoft.Practices.ObjectBuilder2.IPolicyList,Microsoft.Practices.ObjectBuilder2.IPolicyList,Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey,System.Object)">
3196 <summary>
3197 Create a new <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderContext"/> using the explicitly provided
3198 values.
3199 </summary>
3200 <param name="chain">The <see cref="T:Microsoft.Practices.ObjectBuilder2.IStrategyChain"/> to use for this context.</param>
3201 <param name="lifetime">The <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> to use for this context.</param>
3202 <param name="persistentPolicies">The set of persistent policies to use for this context.</param>
3203 <param name="transientPolicies">The set of transient policies to use for this context. It is
3204 the caller's responsibility to ensure that the transient and persistent policies are properly
3205 combined.</param>
3206 <param name="buildKey">Build key for this context.</param>
3207 <param name="existing">Existing object to build up.</param>
3208 </member>
3209 <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderContext.AddResolverOverrides(System.Collections.Generic.IEnumerable{Microsoft.Practices.Unity.ResolverOverride})">
3210 <summary>
3211 Add a new set of resolver override objects to the current build operation.
3212 </summary>
3213 <param name="newOverrides"><see cref="T:Microsoft.Practices.Unity.ResolverOverride"/> objects to add.</param>
3214 </member>
3215 <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderContext.GetOverriddenResolver(System.Type)">
3216 <summary>
3217 Get a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> object for the given <paramref name="dependencyType"/>
3218 or null if that dependency hasn't been overridden.
3219 </summary>
3220 <param name="dependencyType">Type of the dependency.</param>
3221 <returns>Resolver to use, or null if no override matches for the current operation.</returns>
3222 </member>
3223 <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey)">
3224 <summary>
3225 A convenience method to do a new buildup operation on an existing context.
3226 </summary>
3227 <param name="newBuildKey">Key to use to build up.</param>
3228 <returns>Created object.</returns>
3229 </member>
3230 <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderContext.NewBuildUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey,System.Action{Microsoft.Practices.ObjectBuilder2.IBuilderContext})">
3231 <summary>
3232 A convenience method to do a new buildup operation on an existing context. This
3233 overload allows you to specify extra policies which will be in effect for the duration
3234 of the build.
3235 </summary>
3236 <param name="newBuildKey">Key defining what to build up.</param>
3237 <param name="childCustomizationBlock">A delegate that takes a <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderContext"/>. This
3238 is invoked with the new child context before the build up process starts. This gives callers
3239 the opportunity to customize the context for the build process.</param>
3240 <returns>Created object.</returns>
3241 </member>
3242 <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.Strategies">
3243 <summary>
3244 Gets the head of the strategy chain.
3245 </summary>
3246 <returns>
3247 The strategy that's first in the chain; returns null if there are no
3248 strategies in the chain.
3249 </returns>
3250 </member>
3251 <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.BuildKey">
3252 <summary>
3253 Get the current build key for the current build operation.
3254 </summary>
3255 </member>
3256 <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.Existing">
3257 <summary>
3258 The current object being built up or torn down.
3259 </summary>
3260 <value>
3261 The current object being manipulated by the build operation. May
3262 be null if the object hasn't been created yet.</value>
3263 </member>
3264 <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.Lifetime">
3265 <summary>
3266 Gets the <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> associated with the build.
3267 </summary>
3268 <value>
3269 The <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer"/> associated with the build.
3270 </value>
3271 </member>
3272 <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.OriginalBuildKey">
3273 <summary>
3274 Gets the original build key for the build operation.
3275 </summary>
3276 <value>
3277 The original build key for the build operation.
3278 </value>
3279 </member>
3280 <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.PersistentPolicies">
3281 <summary>
3282 The set of policies that were passed into this context.
3283 </summary>
3284 <remarks>This returns the policies passed into the context.
3285 Policies added here will remain after buildup completes.</remarks>
3286 <value>The persistent policies for the current context.</value>
3287 </member>
3288 <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.Policies">
3289 <summary>
3290 Gets the policies for the current context.
3291 </summary>
3292 <remarks>
3293 Any modifications will be transient (meaning, they will be forgotten when
3294 the outer BuildUp for this context is finished executing).
3295 </remarks>
3296 <value>
3297 The policies for the current context.
3298 </value>
3299 </member>
3300 <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.RecoveryStack">
3301 <summary>
3302 Gets the collection of <see cref="T:Microsoft.Practices.ObjectBuilder2.IRequiresRecovery"/> objects
3303 that need to execute in event of an exception.
3304 </summary>
3305 </member>
3306 <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.BuildComplete">
3307 <summary>
3308 Flag indicating if the build operation should continue.
3309 </summary>
3310 <value>true means that building should not call any more
3311 strategies, false means continue to the next strategy.</value>
3312 </member>
3313 <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.CurrentOperation">
3314 <summary>
3315 An object representing what is currently being done in the
3316 build chain. Used to report back errors if there's a failure.
3317 </summary>
3318 </member>
3319 <member name="P:Microsoft.Practices.ObjectBuilder2.BuilderContext.ChildContext">
3320 <summary>
3321 The build context used to resolve a dependency during the build operation represented by this context.
3322 </summary>
3323 </member>
3324 <member name="T:Microsoft.Practices.ObjectBuilder2.DependencyMissingException">
3325 <summary>
3326 Represents that a dependency could not be resolved.
3327 </summary>
3328 </member>
3329 <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyMissingException.#ctor">
3330 <summary>
3331 Initializes a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.DependencyMissingException"/> class with no extra information.
3332 </summary>
3333 </member>
3334 <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyMissingException.#ctor(System.String)">
3335 <summary>
3336 Initializes a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.DependencyMissingException"/> class with the given message.
3337 </summary>
3338 <param name="message">Some random message.</param>
3339 </member>
3340 <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyMissingException.#ctor(System.String,System.Exception)">
3341 <summary>
3342 Initialize a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.DependencyMissingException"/> class with the given
3343 message and inner exception.
3344 </summary>
3345 <param name="message">Some random message</param>
3346 <param name="innerException">Inner exception.</param>
3347 </member>
3348 <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyMissingException.#ctor(System.Object)">
3349 <summary>
3350 Initializes a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.DependencyMissingException"/> class with the build key of the object begin built.
3351 </summary>
3352 <param name="buildKey">The build key of the object begin built.</param>
3353 </member>
3354 <member name="T:Microsoft.Practices.ObjectBuilder2.IllegalInjectionMethodException">
3355 <summary>
3356 The exception thrown when injection is attempted on a method
3357 that is an open generic or has out or ref params.
3358 </summary>
3359 </member>
3360 <member name="M:Microsoft.Practices.ObjectBuilder2.IllegalInjectionMethodException.#ctor">
3361 <summary>
3362 Construct a new <see cref="T:Microsoft.Practices.ObjectBuilder2.IllegalInjectionMethodException"/> with no
3363 message.
3364 </summary>
3365 </member>
3366 <member name="M:Microsoft.Practices.ObjectBuilder2.IllegalInjectionMethodException.#ctor(System.String)">
3367 <summary>
3368 Construct a <see cref="T:Microsoft.Practices.ObjectBuilder2.IllegalInjectionMethodException"/> with the given message
3369 </summary>
3370 <param name="message">Message to return.</param>
3371 </member>
3372 <member name="M:Microsoft.Practices.ObjectBuilder2.IllegalInjectionMethodException.#ctor(System.String,System.Exception)">
3373 <summary>
3374 Construct a <see cref="T:Microsoft.Practices.ObjectBuilder2.IllegalInjectionMethodException"/> with the given message
3375 and inner exception.
3376 </summary>
3377 <param name="message">Message to return.</param>
3378 <param name="innerException">Inner exception</param>
3379 </member>
3380 <member name="T:Microsoft.Practices.ObjectBuilder2.BuilderContextExtensions">
3381 <summary>
3382 Extension methods to provide convenience overloads over the
3383 <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderContext"/> interface.
3384 </summary>
3385 </member>
3386 <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderContextExtensions.NewBuildUp``1(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
3387 <summary>
3388 Start a recursive build up operation to retrieve the default
3389 value for the given <typeparamref name="TResult"/> type.
3390 </summary>
3391 <typeparam name="TResult">Type of object to build.</typeparam>
3392 <param name="context">Parent context.</param>
3393 <returns>Resulting object.</returns>
3394 </member>
3395 <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderContextExtensions.NewBuildUp``1(Microsoft.Practices.ObjectBuilder2.IBuilderContext,System.String)">
3396 <summary>
3397 Start a recursive build up operation to retrieve the named
3398 implementation for the given <typeparamref name="TResult"/> type.
3399 </summary>
3400 <typeparam name="TResult">Type to resolve.</typeparam>
3401 <param name="context">Parent context.</param>
3402 <param name="name">Name to resolve with.</param>
3403 <returns>The resulting object.</returns>
3404 </member>
3405 <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderContextExtensions.AddResolverOverrides(Microsoft.Practices.ObjectBuilder2.IBuilderContext,Microsoft.Practices.Unity.ResolverOverride[])">
3406 <summary>
3407 Add a set of <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/>s to the context, specified as a
3408 variable argument list.
3409 </summary>
3410 <param name="context">Context to add overrides to.</param>
3411 <param name="overrides">The overrides.</param>
3412 </member>
3413 <member name="T:Microsoft.Practices.ObjectBuilder2.IRecoveryStack">
3414 <summary>
3415 Data structure that stores the set of <see cref="T:Microsoft.Practices.ObjectBuilder2.IRequiresRecovery"/>
3416 objects and executes them when requested.
3417 </summary>
3418 </member>
3419 <member name="M:Microsoft.Practices.ObjectBuilder2.IRecoveryStack.Add(Microsoft.Practices.ObjectBuilder2.IRequiresRecovery)">
3420 <summary>
3421 Add a new <see cref="T:Microsoft.Practices.ObjectBuilder2.IRequiresRecovery"/> object to this
3422 list.
3423 </summary>
3424 <param name="recovery">Object to add.</param>
3425 </member>
3426 <member name="M:Microsoft.Practices.ObjectBuilder2.IRecoveryStack.ExecuteRecovery">
3427 <summary>
3428 Execute the <see cref="M:Microsoft.Practices.ObjectBuilder2.IRequiresRecovery.Recover"/> method
3429 of everything in the recovery list. Recoveries will execute
3430 in the opposite order of add - it's a stack.
3431 </summary>
3432 </member>
3433 <member name="P:Microsoft.Practices.ObjectBuilder2.IRecoveryStack.Count">
3434 <summary>
3435 Return the number of recovery objects currently in the stack.
3436 </summary>
3437 </member>
3438 <member name="T:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer">
3439 <summary>
3440 Represents a lifetime container.
3441 </summary>
3442 <remarks>
3443 A lifetime container tracks the lifetime of an object, and implements
3444 IDisposable. When the container is disposed, any objects in the
3445 container which implement IDisposable are also disposed.
3446 </remarks>
3447 </member>
3448 <member name="M:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer.Add(System.Object)">
3449 <summary>
3450 Adds an object to the lifetime container.
3451 </summary>
3452 <param name="item">The item to be added to the lifetime container.</param>
3453 </member>
3454 <member name="M:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer.Contains(System.Object)">
3455 <summary>
3456 Determine if a given object is in the lifetime container.
3457 </summary>
3458 <param name="item">
3459 The item to locate in the lifetime container.
3460 </param>
3461 <returns>
3462 Returns true if the object is contained in the lifetime
3463 container; returns false otherwise.
3464 </returns>
3465 </member>
3466 <member name="M:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer.Remove(System.Object)">
3467 <summary>
3468 Removes an item from the lifetime container. The item is
3469 not disposed.
3470 </summary>
3471 <param name="item">The item to be removed.</param>
3472 </member>
3473 <member name="P:Microsoft.Practices.ObjectBuilder2.ILifetimeContainer.Count">
3474 <summary>
3475 Gets the number of references in the lifetime container
3476 </summary>
3477 <value>
3478 The number of references in the lifetime container
3479 </value>
3480 </member>
3481 <member name="T:Microsoft.Practices.ObjectBuilder2.LifetimeContainer">
3482 <summary>
3483 Represents a lifetime container.
3484 </summary>
3485 <remarks>
3486 A lifetime container tracks the lifetime of an object, and implements
3487 IDisposable. When the container is disposed, any objects in the
3488 container which implement IDisposable are also disposed.
3489 </remarks>
3490 </member>
3491 <member name="M:Microsoft.Practices.ObjectBuilder2.LifetimeContainer.Add(System.Object)">
3492 <summary>
3493 Adds an object to the lifetime container.
3494 </summary>
3495 <param name="item">The item to be added to the lifetime container.</param>
3496 </member>
3497 <member name="M:Microsoft.Practices.ObjectBuilder2.LifetimeContainer.Contains(System.Object)">
3498 <summary>
3499 Determine if a given object is in the lifetime container.
3500 </summary>
3501 <param name="item">
3502 The item to locate in the lifetime container.
3503 </param>
3504 <returns>
3505 Returns true if the object is contained in the lifetime
3506 container; returns false otherwise.
3507 </returns>
3508 </member>
3509 <member name="M:Microsoft.Practices.ObjectBuilder2.LifetimeContainer.Dispose">
3510 <summary>
3511 Releases the resources used by the <see cref="T:Microsoft.Practices.ObjectBuilder2.LifetimeContainer"/>.
3512 </summary>
3513 </member>
3514 <member name="M:Microsoft.Practices.ObjectBuilder2.LifetimeContainer.Dispose(System.Boolean)">
3515 <summary>
3516 Releases the managed resources used by the DbDataReader and optionally releases the unmanaged resources.
3517 </summary>
3518 <param name="disposing">
3519 true to release managed and unmanaged resources; false to release only unmanaged resources.
3520 </param>
3521 </member>
3522 <member name="M:Microsoft.Practices.ObjectBuilder2.LifetimeContainer.GetEnumerator">
3523 <summary>
3524 Returns an enumerator that iterates through the lifetime container.
3525 </summary>
3526 <returns>
3527 An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the life time container.
3528 </returns>
3529 </member>
3530 <member name="M:Microsoft.Practices.ObjectBuilder2.LifetimeContainer.System#Collections#IEnumerable#GetEnumerator">
3531 <summary>
3532 Returns an enumerator that iterates through the lifetime container.
3533 </summary>
3534 <returns>
3535 An <see cref="T:System.Collections.IEnumerator"/> object that can be used to iterate through the life time container.
3536 </returns>
3537 </member>
3538 <member name="M:Microsoft.Practices.ObjectBuilder2.LifetimeContainer.Remove(System.Object)">
3539 <summary>
3540 Removes an item from the lifetime container. The item is
3541 not disposed.
3542 </summary>
3543 <param name="item">The item to be removed.</param>
3544 </member>
3545 <member name="P:Microsoft.Practices.ObjectBuilder2.LifetimeContainer.Count">
3546 <summary>
3547 Gets the number of references in the lifetime container
3548 </summary>
3549 <value>
3550 The number of references in the lifetime container
3551 </value>
3552 </member>
3553 <member name="T:Microsoft.Practices.ObjectBuilder2.IPolicyList">
3554 <summary>
3555 A custom collection over <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderPolicy"/> objects.
3556 </summary>
3557 </member>
3558 <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.Clear(System.Type,System.Object)">
3559 <summary>
3560 Removes an individual policy type for a build key.
3561 </summary>
3562 <param name="policyInterface">The type of policy to remove.</param>
3563 <param name="buildKey">The key the policy applies.</param>
3564 </member>
3565 <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.ClearAll">
3566 <summary>
3567 Removes all policies from the list.
3568 </summary>
3569 </member>
3570 <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.ClearDefault(System.Type)">
3571 <summary>
3572 Removes a default policy.
3573 </summary>
3574 <param name="policyInterface">The type the policy was registered as.</param>
3575 </member>
3576 <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.Get(System.Type,System.Object,System.Boolean,Microsoft.Practices.ObjectBuilder2.IPolicyList@)">
3577 <summary>
3578 Gets an individual policy.
3579 </summary>
3580 <param name="policyInterface">The interface the policy is registered under.</param>
3581 <param name="buildKey">The key the policy applies.</param>
3582 <param name="localOnly">true if the policy searches local only; otherwise false to seach up the parent chain.</param>
3583 <param name="containingPolicyList">The policy list in the chain that the searched for policy was found in, null if the policy was
3584 not found.</param>
3585 <returns>The policy in the list, if present; returns null otherwise.</returns>
3586 </member>
3587 <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.GetNoDefault(System.Type,System.Object,System.Boolean,Microsoft.Practices.ObjectBuilder2.IPolicyList@)">
3588 <summary>
3589 Get the non default policy.
3590 </summary>
3591 <param name="policyInterface">The interface the policy is registered under.</param>
3592 <param name="buildKey">The key the policy applies to.</param>
3593 <param name="localOnly">True if the search should be in the local policy list only; otherwise false to search up the parent chain.</param>
3594 <param name="containingPolicyList">The policy list in the chain that the searched for policy was found in, null if the policy was
3595 not found.</param>
3596 <returns>The policy in the list if present; returns null otherwise.</returns>
3597 </member>
3598 <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.Set(System.Type,Microsoft.Practices.ObjectBuilder2.IBuilderPolicy,System.Object)">
3599 <summary>
3600 Sets an individual policy.
3601 </summary>
3602 <param name="policyInterface">The <see cref="T:System.Type"/> of the policy.</param>
3603 <param name="policy">The policy to be registered.</param>
3604 <param name="buildKey">The key the policy applies.</param>
3605 </member>
3606 <member name="M:Microsoft.Practices.ObjectBuilder2.IPolicyList.SetDefault(System.Type,Microsoft.Practices.ObjectBuilder2.IBuilderPolicy)">
3607 <summary>
3608 Sets a default policy. When checking for a policy, if no specific individual policy
3609 is available, the default will be used.
3610 </summary>
3611 <param name="policyInterface">The interface to register the policy under.</param>
3612 <param name="policy">The default policy to be registered.</param>
3613 </member>
3614 <member name="T:Microsoft.Practices.ObjectBuilder2.PolicyList">
3615 <summary>
3616 A custom collection wrapper over <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderPolicy"/> objects.
3617 </summary>
3618 </member>
3619 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.#ctor">
3620 <summary>
3621 Initialize a new instance of a <see cref="T:Microsoft.Practices.ObjectBuilder2.PolicyList"/> class.
3622 </summary>
3623 </member>
3624 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.#ctor(Microsoft.Practices.ObjectBuilder2.IPolicyList)">
3625 <summary>
3626 Initialize a new instance of a <see cref="T:Microsoft.Practices.ObjectBuilder2.PolicyList"/> class with another policy list.
3627 </summary>
3628 <param name="innerPolicyList">An inner policy list to search.</param>
3629 </member>
3630 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.Clear(System.Type,System.Object)">
3631 <summary>
3632 Removes an individual policy type for a build key.
3633 </summary>
3634 <param name="policyInterface">The type of policy to remove.</param>
3635 <param name="buildKey">The key the policy applies.</param>
3636 </member>
3637 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.ClearAll">
3638 <summary>
3639 Removes all policies from the list.
3640 </summary>
3641 </member>
3642 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.ClearDefault(System.Type)">
3643 <summary>
3644 Removes a default policy.
3645 </summary>
3646 <param name="policyInterface">The type the policy was registered as.</param>
3647 </member>
3648 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.Get(System.Type,System.Object,System.Boolean,Microsoft.Practices.ObjectBuilder2.IPolicyList@)">
3649 <summary>
3650 Gets an individual policy.
3651 </summary>
3652 <param name="policyInterface">The interface the policy is registered under.</param>
3653 <param name="buildKey">The key the policy applies.</param>
3654 <param name="localOnly">true if the policy searches local only; otherwise false to seach up the parent chain.</param>
3655 <param name="containingPolicyList">The policy list in the chain that the searched for policy was found in, null if the policy was
3656 not found.</param>
3657 <returns>The policy in the list, if present; returns null otherwise.</returns>
3658 </member>
3659 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.GetNoDefault(System.Type,System.Object,System.Boolean,Microsoft.Practices.ObjectBuilder2.IPolicyList@)">
3660 <summary>
3661 Get the non default policy.
3662 </summary>
3663 <param name="policyInterface">The interface the policy is registered under.</param>
3664 <param name="buildKey">The key the policy applies to.</param>
3665 <param name="localOnly">True if the search should be in the local policy list only; otherwise false to search up the parent chain.</param>
3666 <param name="containingPolicyList">The policy list in the chain that the searched for policy was found in, null if the policy was
3667 not found.</param>
3668 <returns>The policy in the list if present; returns null otherwise.</returns>
3669 </member>
3670 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.Set(System.Type,Microsoft.Practices.ObjectBuilder2.IBuilderPolicy,System.Object)">
3671 <summary>
3672 Sets an individual policy.
3673 </summary>
3674 <param name="policyInterface">The <see cref="T:System.Type"/> of the policy.</param>
3675 <param name="policy">The policy to be registered.</param>
3676 <param name="buildKey">The key the policy applies.</param>
3677 </member>
3678 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyList.SetDefault(System.Type,Microsoft.Practices.ObjectBuilder2.IBuilderPolicy)">
3679 <summary>
3680 Sets a default policy. When checking for a policy, if no specific individual policy
3681 is available, the default will be used.
3682 </summary>
3683 <param name="policyInterface">The interface to register the policy under.</param>
3684 <param name="policy">The default policy to be registered.</param>
3685 </member>
3686 <member name="P:Microsoft.Practices.ObjectBuilder2.PolicyList.Count">
3687 <summary>
3688 Gets the number of items in the locator.
3689 </summary>
3690 <value>
3691 The number of items in the locator.
3692 </value>
3693 </member>
3694 <member name="T:Microsoft.Practices.ObjectBuilder2.PolicyListExtensions">
3695 <summary>
3696 Extension methods on <see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to provide convenience
3697 overloads (generic versions, mostly).
3698 </summary>
3699 </member>
3700 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyListExtensions.Clear``1(Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Object)">
3701 <summary>
3702 Removes an individual policy type for a build key.
3703 </summary>
3704 <typeparam name="TPolicyInterface">The type the policy was registered as.</typeparam>
3705 <param name="policies"><see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to remove the policy from.</param>
3706 <param name="buildKey">The key the policy applies.</param>
3707 </member>
3708 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyListExtensions.ClearDefault``1(Microsoft.Practices.ObjectBuilder2.IPolicyList)">
3709 <summary>
3710 Removes a default policy.
3711 </summary>
3712 <typeparam name="TPolicyInterface">The type the policy was registered as.</typeparam>
3713 <param name="policies"><see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to remove the policy from.</param>
3714 </member>
3715 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyListExtensions.Get``1(Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Object)">
3716 <summary>
3717 Gets an individual policy.
3718 </summary>
3719 <typeparam name="TPolicyInterface">The interface the policy is registered under.</typeparam>
3720 <param name="policies"><see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to search.</param>
3721 <param name="buildKey">The key the policy applies.</param>
3722 <returns>The policy in the list, if present; returns null otherwise.</returns>
3723 </member>
3724 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyListExtensions.Get``1(Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Object,Microsoft.Practices.ObjectBuilder2.IPolicyList@)">
3725 <summary>
3726 Gets an individual policy.
3727 </summary>
3728 <typeparam name="TPolicyInterface">The interface the policy is registered under.</typeparam>
3729 <param name="policies"><see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to search.</param>
3730 <param name="buildKey">The key the policy applies.</param>
3731 <param name="containingPolicyList">The policy list that actually contains the returned policy.</param>
3732 <returns>The policy in the list, if present; returns null otherwise.</returns>
3733 </member>
3734 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyListExtensions.Get(Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Type,System.Object)">
3735 <summary>
3736 Gets an individual policy.
3737 </summary>
3738 <param name="policies"><see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to search.</param>
3739 <param name="policyInterface">The interface the policy is registered under.</param>
3740 <param name="buildKey">The key the policy applies.</param>
3741 <returns>The policy in the list, if present; returns null otherwise.</returns>
3742 </member>
3743 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyListExtensions.Get(Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Type,System.Object,Microsoft.Practices.ObjectBuilder2.IPolicyList@)">
3744 <summary>
3745 Gets an individual policy.
3746 </summary>
3747 <param name="policies"><see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to search.</param>
3748 <param name="policyInterface">The interface the policy is registered under.</param>
3749 <param name="buildKey">The key the policy applies.</param>
3750 <param name="containingPolicyList">The policy list that actually contains the returned policy.</param>
3751 <returns>The policy in the list, if present; returns null otherwise.</returns>
3752 </member>
3753 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyListExtensions.Get``1(Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Object,System.Boolean)">
3754 <summary>
3755 Gets an individual policy.
3756 </summary>
3757 <typeparam name="TPolicyInterface">The interface the policy is registered under.</typeparam>
3758 <param name="policies"><see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to search.</param>
3759 <param name="buildKey">The key the policy applies.</param>
3760 <param name="localOnly">true if the policy searches local only; otherwise false to seach up the parent chain.</param>
3761 <returns>The policy in the list, if present; returns null otherwise.</returns>
3762 </member>
3763 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyListExtensions.Get``1(Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Object,System.Boolean,Microsoft.Practices.ObjectBuilder2.IPolicyList@)">
3764 <summary>
3765 Gets an individual policy.
3766 </summary>
3767 <typeparam name="TPolicyInterface">The interface the policy is registered under.</typeparam>
3768 <param name="policies"><see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to search.</param>
3769 <param name="buildKey">The key the policy applies.</param>
3770 <param name="localOnly">true if the policy searches local only; otherwise false to seach up the parent chain.</param>
3771 <param name="containingPolicyList">The policy list that actually contains the returned policy.</param>
3772 <returns>The policy in the list, if present; returns null otherwise.</returns>
3773 </member>
3774 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyListExtensions.Get(Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Type,System.Object,System.Boolean)">
3775 <summary>
3776 Gets an individual policy.
3777 </summary>
3778 <param name="policies"><see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to search.</param>
3779 <param name="policyInterface">The interface the policy is registered under.</param>
3780 <param name="buildKey">The key the policy applies.</param>
3781 <param name="localOnly">true if the policy searches local only; otherwise false to seach up the parent chain.</param>
3782 <returns>The policy in the list, if present; returns null otherwise.</returns>
3783 </member>
3784 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyListExtensions.GetNoDefault``1(Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Object,System.Boolean)">
3785 <summary>
3786 Get the non default policy.
3787 </summary>
3788 <typeparam name="TPolicyInterface">The interface the policy is registered under.</typeparam>
3789 <param name="policies"><see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to search.</param>
3790 <param name="buildKey">The key the policy applies.</param>
3791 <param name="localOnly">true if the policy searches local only; otherwise false to seach up the parent chain.</param>
3792 <returns>The policy in the list, if present; returns null otherwise.</returns>
3793 </member>
3794 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyListExtensions.GetNoDefault``1(Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Object,System.Boolean,Microsoft.Practices.ObjectBuilder2.IPolicyList@)">
3795 <summary>
3796 Get the non default policy.
3797 </summary>
3798 <typeparam name="TPolicyInterface">The interface the policy is registered under.</typeparam>
3799 <param name="policies"><see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to search.</param>
3800 <param name="buildKey">The key the policy applies.</param>
3801 <param name="localOnly">true if the policy searches local only; otherwise false to seach up the parent chain.</param>
3802 <param name="containingPolicyList">The policy list that actually contains the returned policy.</param>
3803 <returns>The policy in the list, if present; returns null otherwise.</returns>
3804 </member>
3805 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyListExtensions.GetNoDefault(Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Type,System.Object,System.Boolean)">
3806 <summary>
3807 Get the non default policy.
3808 </summary>
3809 <param name="policies"><see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to search.</param>
3810 <param name="policyInterface">The interface the policy is registered under.</param>
3811 <param name="buildKey">The key the policy applies.</param>
3812 <param name="localOnly">true if the policy searches local only; otherwise false to seach up the parent chain.</param>
3813 <returns>The policy in the list, if present; returns null otherwise.</returns>
3814 </member>
3815 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyListExtensions.Set``1(Microsoft.Practices.ObjectBuilder2.IPolicyList,``0,System.Object)">
3816 <summary>
3817 Sets an individual policy.
3818 </summary>
3819 <typeparam name="TPolicyInterface">The interface the policy is registered under.</typeparam>
3820 <param name="policies"><see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to add the policy to.</param>
3821 <param name="policy">The policy to be registered.</param>
3822 <param name="buildKey">The key the policy applies.</param>
3823 </member>
3824 <member name="M:Microsoft.Practices.ObjectBuilder2.PolicyListExtensions.SetDefault``1(Microsoft.Practices.ObjectBuilder2.IPolicyList,``0)">
3825 <summary>
3826 Sets a default policy. When checking for a policy, if no specific individual policy
3827 is available, the default will be used.
3828 </summary>
3829 <typeparam name="TPolicyInterface">The interface to register the policy under.</typeparam>
3830 <param name="policies"><see cref="T:Microsoft.Practices.ObjectBuilder2.IPolicyList"/> to add the policy to.</param>
3831 <param name="policy">The default policy to be registered.</param>
3832 </member>
3833 <member name="T:Microsoft.Practices.ObjectBuilder2.RecoveryStack">
3834 <summary>
3835 An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IRecoveryStack"/>.
3836 </summary>
3837 </member>
3838 <member name="M:Microsoft.Practices.ObjectBuilder2.RecoveryStack.Add(Microsoft.Practices.ObjectBuilder2.IRequiresRecovery)">
3839 <summary>
3840 Add a new <see cref="T:Microsoft.Practices.ObjectBuilder2.IRequiresRecovery"/> object to this
3841 list.
3842 </summary>
3843 <param name="recovery">Object to add.</param>
3844 </member>
3845 <member name="M:Microsoft.Practices.ObjectBuilder2.RecoveryStack.ExecuteRecovery">
3846 <summary>
3847 Execute the <see cref="M:Microsoft.Practices.ObjectBuilder2.IRequiresRecovery.Recover"/> method
3848 of everything in the recovery list. Recoveries will execute
3849 in the opposite order of add - it's a stack.
3850 </summary>
3851 </member>
3852 <member name="P:Microsoft.Practices.ObjectBuilder2.RecoveryStack.Count">
3853 <summary>
3854 Return the number of recovery objects currently in the stack.
3855 </summary>
3856 </member>
3857 <member name="T:Microsoft.Practices.ObjectBuilder2.BuilderAwareStrategy">
3858 <summary>
3859 Implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy"/> which will notify an object about
3860 the completion of a BuildUp operation, or start of a TearDown operation.
3861 </summary>
3862 <remarks>
3863 This strategy checks the object that is passing through the builder chain to see if it
3864 implements IBuilderAware and if it does, it will call <see cref="M:Microsoft.Practices.ObjectBuilder2.IBuilderAware.OnBuiltUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey)"/>
3865 and <see cref="M:Microsoft.Practices.ObjectBuilder2.IBuilderAware.OnTearingDown"/>. This strategy is meant to be used from the
3866 <see cref="F:Microsoft.Practices.ObjectBuilder2.BuilderStage.PostInitialization"/> stage.
3867 </remarks>
3868 </member>
3869 <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderAwareStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
3870 <summary>
3871 Called during the chain of responsibility for a build operation. The
3872 PreBuildUp method is called when the chain is being executed in the
3873 forward direction.
3874 </summary>
3875 <param name="context">Context of the build operation.</param>
3876 </member>
3877 <member name="M:Microsoft.Practices.ObjectBuilder2.BuilderAwareStrategy.PreTearDown(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
3878 <summary>
3879 Called during the chain of responsibility for a teardown operation. The
3880 PreTearDown method is called when the chain is being executed in the
3881 forward direction.
3882 </summary>
3883 <param name="context">Context of the teardown operation.</param>
3884 </member>
3885 <member name="T:Microsoft.Practices.ObjectBuilder2.IBuilderAware">
3886 <summary>
3887 Implemented on a class when it wants to receive notifications
3888 about the build process.
3889 </summary>
3890 </member>
3891 <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilderAware.OnBuiltUp(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey)">
3892 <summary>
3893 Called by the <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderAwareStrategy"/> when the object is being built up.
3894 </summary>
3895 <param name="buildKey">The key of the object that was just built up.</param>
3896 </member>
3897 <member name="M:Microsoft.Practices.ObjectBuilder2.IBuilderAware.OnTearingDown">
3898 <summary>
3899 Called by the <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderAwareStrategy"/> when the object is being torn down.
3900 </summary>
3901 </member>
3902 <member name="T:Microsoft.Practices.ObjectBuilder2.BuilderStage">
3903 <summary>
3904 Enumeration to represent the object builder stages.
3905 </summary>
3906 <remarks>
3907 The order of the values in the enumeration is the order in which the stages are run.
3908 </remarks>
3909 </member>
3910 <member name="F:Microsoft.Practices.ObjectBuilder2.BuilderStage.PreCreation">
3911 <summary>
3912 Strategies in this stage run before creation. Typical work done in this stage might
3913 include strategies that use reflection to set policies into the context that other
3914 strategies would later use.
3915 </summary>
3916 </member>
3917 <member name="F:Microsoft.Practices.ObjectBuilder2.BuilderStage.Creation">
3918 <summary>
3919 Strategies in this stage create objects. Typically you will only have a single policy-driven
3920 creation strategy in this stage.
3921 </summary>
3922 </member>
3923 <member name="F:Microsoft.Practices.ObjectBuilder2.BuilderStage.Initialization">
3924 <summary>
3925 Strategies in this stage work on created objects. Typical work done in this stage might
3926 include setter injection and method calls.
3927 </summary>
3928 </member>
3929 <member name="F:Microsoft.Practices.ObjectBuilder2.BuilderStage.PostInitialization">
3930 <summary>
3931 Strategies in this stage work on objects that are already initialized. Typical work done in
3932 this stage might include looking to see if the object implements some notification interface
3933 to discover when its initialization stage has been completed.
3934 </summary>
3935 </member>
3936 <member name="T:Microsoft.Practices.ObjectBuilder2.BuildKeyMappingPolicy">
3937 <summary>
3938 Represents a builder policy for mapping build keys.
3939 </summary>
3940 </member>
3941 <member name="T:Microsoft.Practices.ObjectBuilder2.IBuildKeyMappingPolicy">
3942 <summary>
3943 Represents a builder policy for mapping build keys.
3944 </summary>
3945 </member>
3946 <member name="M:Microsoft.Practices.ObjectBuilder2.IBuildKeyMappingPolicy.Map(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey,Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
3947 <summary>
3948 Maps the build key.
3949 </summary>
3950 <param name="buildKey">The build key to map.</param>
3951 <param name="context">Current build context. Used for contextual information
3952 if writing a more sophisticated mapping. This parameter can be null
3953 (called when getting container registrations).</param>
3954 <returns>The new build key.</returns>
3955 </member>
3956 <member name="M:Microsoft.Practices.ObjectBuilder2.BuildKeyMappingPolicy.#ctor(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey)">
3957 <summary>
3958 Initialize a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.BuildKeyMappingPolicy"/> with the new build key.
3959 </summary>
3960 <param name="newBuildKey">The new build key.</param>
3961 </member>
3962 <member name="M:Microsoft.Practices.ObjectBuilder2.BuildKeyMappingPolicy.Map(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey,Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
3963 <summary>
3964 Maps the build key.
3965 </summary>
3966 <param name="buildKey">The build key to map.</param>
3967 <param name="context">Current build context. Used for contextual information
3968 if writing a more sophisticated mapping, unused in this implementation.</param>
3969 <returns>The new build key.</returns>
3970 </member>
3971 <member name="T:Microsoft.Practices.ObjectBuilder2.BuildKeyMappingStrategy">
3972 <summary>
3973 Represents a strategy for mapping build keys in the build up operation.
3974 </summary>
3975 </member>
3976 <member name="M:Microsoft.Practices.ObjectBuilder2.BuildKeyMappingStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
3977 <summary>
3978 Called during the chain of responsibility for a build operation. Looks for the <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuildKeyMappingPolicy"/>
3979 and if found maps the build key for the current operation.
3980 </summary>
3981 <param name="context">The context for the operation.</param>
3982 </member>
3983 <member name="T:Microsoft.Practices.ObjectBuilder2.GenericTypeBuildKeyMappingPolicy">
3984 <summary>
3985 An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuildKeyMappingPolicy"/> that can map
3986 generic types.
3987 </summary>
3988 </member>
3989 <member name="M:Microsoft.Practices.ObjectBuilder2.GenericTypeBuildKeyMappingPolicy.#ctor(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey)">
3990 <summary>
3991 Create a new <see cref="T:Microsoft.Practices.ObjectBuilder2.GenericTypeBuildKeyMappingPolicy"/> instance
3992 that will map generic types.
3993 </summary>
3994 <param name="destinationKey">Build key to map to. This must be or contain an open generic type.</param>
3995 </member>
3996 <member name="M:Microsoft.Practices.ObjectBuilder2.GenericTypeBuildKeyMappingPolicy.Map(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey,Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
3997 <summary>
3998 Maps the build key.
3999 </summary>
4000 <param name="buildKey">The build key to map.</param>
4001 <param name="context">Current build context. Used for contextual information
4002 if writing a more sophisticated mapping.</param>
4003 <returns>The new build key.</returns>
4004 </member>
4005 <member name="T:Microsoft.Practices.ObjectBuilder2.BuildOperation">
4006 <summary>
4007 Base class for the current operation stored in the build context.
4008 </summary>
4009 </member>
4010 <member name="M:Microsoft.Practices.ObjectBuilder2.BuildOperation.#ctor(System.Type)">
4011 <summary>
4012 Create a new <see cref="T:Microsoft.Practices.ObjectBuilder2.BuildOperation"/>.
4013 </summary>
4014 <param name="typeBeingConstructed">Type currently being built.</param>
4015 </member>
4016 <member name="P:Microsoft.Practices.ObjectBuilder2.BuildOperation.TypeBeingConstructed">
4017 <summary>
4018 The type that's currently being built.
4019 </summary>
4020 </member>
4021 <member name="T:Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy">
4022 <summary>
4023 A <see cref="T:Microsoft.Practices.ObjectBuilder2.BuilderStrategy"/> that will look for a build plan
4024 in the current context. If it exists, it invokes it, otherwise
4025 it creates one and stores it for later, and invokes it.
4026 </summary>
4027 </member>
4028 <member name="M:Microsoft.Practices.ObjectBuilder2.BuildPlanStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
4029 <summary>
4030 Called during the chain of responsibility for a build operation.
4031 </summary>
4032 <param name="context">The context for the operation.</param>
4033 </member>
4034 <member name="T:Microsoft.Practices.ObjectBuilder2.ConstructorSelectorPolicy`1">
4035 <summary>
4036 An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IConstructorSelectorPolicy"/> that chooses
4037 constructors based on these criteria: first, pick a constructor marked with the
4038 <typeparamref name="TInjectionConstructorMarkerAttribute"/> attribute. If there
4039 isn't one, then choose the constructor with the longest parameter list. If that is ambiguous,
4040 then throw.
4041 </summary>
4042 <exception cref="T:System.InvalidOperationException">Thrown when the constructor to choose is ambiguous.</exception>
4043 <typeparam name="TInjectionConstructorMarkerAttribute">Attribute used to mark the constructor to call.</typeparam>
4044 </member>
4045 <member name="M:Microsoft.Practices.ObjectBuilder2.ConstructorSelectorPolicy`1.CreateResolver(System.Reflection.ParameterInfo)">
4046 <summary>
4047 Create a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance for the given
4048 <see cref="T:System.Reflection.ParameterInfo"/>.
4049 </summary>
4050 <param name="parameter">Parameter to create the resolver for.</param>
4051 <returns>The resolver object.</returns>
4052 </member>
4053 <member name="T:Microsoft.Practices.ObjectBuilder2.SelectedConstructor">
4054 <summary>
4055 Objects of this type are the return value from <see cref="M:Microsoft.Practices.ObjectBuilder2.IConstructorSelectorPolicy.SelectConstructor(Microsoft.Practices.ObjectBuilder2.IBuilderContext,Microsoft.Practices.ObjectBuilder2.IPolicyList)"/>.
4056 It encapsulates the desired <see cref="T:System.Reflection.ConstructorInfo"/> with the string keys
4057 needed to look up the <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> for each
4058 parameter.
4059 </summary>
4060 </member>
4061 <member name="T:Microsoft.Practices.ObjectBuilder2.SelectedMemberWithParameters`1">
4062 <summary>
4063 Base class for return values from selector policies that
4064 return a memberinfo of some sort plus a list of parameter
4065 keys to look up the parameter resolvers.
4066 </summary>
4067 </member>
4068 <member name="T:Microsoft.Practices.ObjectBuilder2.SelectedMemberWithParameters">
4069 <summary>
4070 Base class for return of selector policies that need
4071 to keep track of a set of parameter keys.
4072 </summary>
4073 </member>
4074 <member name="M:Microsoft.Practices.ObjectBuilder2.SelectedMemberWithParameters.AddParameterKey(System.String)">
4075 <summary>
4076 Add a new parameter key to this object. Keys are assumed
4077 to be in the order of the parameters to the constructor.
4078 </summary>
4079 <param name="newKey">Key for the next parameter to look up.</param>
4080 </member>
4081 <member name="M:Microsoft.Practices.ObjectBuilder2.SelectedMemberWithParameters.GetParameterKeys">
4082 <summary>
4083 The set of keys for the constructor parameters.
4084 </summary>
4085 </member>
4086 <member name="M:Microsoft.Practices.ObjectBuilder2.SelectedMemberWithParameters`1.#ctor(`0)">
4087 <summary>
4088 Construct a new <see cref="T:Microsoft.Practices.ObjectBuilder2.SelectedMemberWithParameters`1"/>, storing
4089 the given member info.
4090 </summary>
4091 <param name="memberInfo">Member info to store.</param>
4092 </member>
4093 <member name="P:Microsoft.Practices.ObjectBuilder2.SelectedMemberWithParameters`1.MemberInfo">
4094 <summary>
4095 The member info stored.
4096 </summary>
4097 </member>
4098 <member name="M:Microsoft.Practices.ObjectBuilder2.SelectedConstructor.#ctor(System.Reflection.ConstructorInfo)">
4099 <summary>
4100 Create a new <see cref="T:Microsoft.Practices.ObjectBuilder2.SelectedConstructor"/> instance which
4101 contains the given constructor.
4102 </summary>
4103 <param name="constructor">The constructor to wrap.</param>
4104 </member>
4105 <member name="P:Microsoft.Practices.ObjectBuilder2.SelectedConstructor.Constructor">
4106 <summary>
4107 The constructor this object wraps.
4108 </summary>
4109 </member>
4110 <member name="T:Microsoft.Practices.ObjectBuilder2.ConstructorArgumentResolveOperation">
4111 <summary>
4112 This class records the information about which constructor argument is currently
4113 being resolved, and is responsible for generating the error string required when
4114 an error has occurred.
4115 </summary>
4116 </member>
4117 <member name="M:Microsoft.Practices.ObjectBuilder2.ConstructorArgumentResolveOperation.#ctor(System.Type,System.String,System.String)">
4118 <summary>
4119 Initializes a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.ConstructorArgumentResolveOperation"/> class.
4120 </summary>
4121 <param name="typeBeingConstructed">The type that is being constructed.</param>
4122 <param name="constructorSignature">A string representing the constructor being called.</param>
4123 <param name="parameterName">Parameter being resolved.</param>
4124 </member>
4125 <member name="M:Microsoft.Practices.ObjectBuilder2.ConstructorArgumentResolveOperation.ToString">
4126 <summary>
4127 Generate the string describing what parameter was being resolved.
4128 </summary>
4129 <returns>The description string.</returns>
4130 </member>
4131 <member name="P:Microsoft.Practices.ObjectBuilder2.ConstructorArgumentResolveOperation.ConstructorSignature">
4132 <summary>
4133 String describing the constructor being set up.
4134 </summary>
4135 </member>
4136 <member name="P:Microsoft.Practices.ObjectBuilder2.ConstructorArgumentResolveOperation.ParameterName">
4137 <summary>
4138 Parameter that's being resolved.
4139 </summary>
4140 </member>
4141 <member name="T:Microsoft.Practices.ObjectBuilder2.InvokingConstructorOperation">
4142 <summary>
4143 A class that records that a constructor is about to be call, and is
4144 responsible for generating the error string required when
4145 an error has occurred.
4146 </summary>
4147 </member>
4148 <member name="M:Microsoft.Practices.ObjectBuilder2.InvokingConstructorOperation.#ctor(System.Type,System.String)">
4149 <summary>
4150 Initializes a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.InvokingConstructorOperation"/> class.
4151 </summary>
4152 </member>
4153 <member name="M:Microsoft.Practices.ObjectBuilder2.InvokingConstructorOperation.ToString">
4154 <summary>
4155 Generate the description string.
4156 </summary>
4157 <returns>The string.</returns>
4158 </member>
4159 <member name="P:Microsoft.Practices.ObjectBuilder2.InvokingConstructorOperation.ConstructorSignature">
4160 <summary>
4161 Constructor we're trying to call.
4162 </summary>
4163 </member>
4164 <member name="T:Microsoft.Practices.ObjectBuilder2.InvokingMethodOperation">
4165 <summary>
4166 A class that records that a constructor is about to be call, and is
4167 responsible for generating the error string required when
4168 an error has occurred.
4169 </summary>
4170 </member>
4171 <member name="M:Microsoft.Practices.ObjectBuilder2.InvokingMethodOperation.#ctor(System.Type,System.String)">
4172 <summary>
4173 Initializes a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.InvokingMethodOperation"/> class.
4174 </summary>
4175 </member>
4176 <member name="M:Microsoft.Practices.ObjectBuilder2.InvokingMethodOperation.ToString">
4177 <summary>
4178 Generate the description string.
4179 </summary>
4180 <returns>The string.</returns>
4181 </member>
4182 <member name="P:Microsoft.Practices.ObjectBuilder2.InvokingMethodOperation.MethodSignature">
4183 <summary>
4184 Method we're trying to call.
4185 </summary>
4186 </member>
4187 <member name="T:Microsoft.Practices.ObjectBuilder2.MethodArgumentResolveOperation">
4188 <summary>
4189 This class records the information about which constructor argument is currently
4190 being resolved, and is responsible for generating the error string required when
4191 an error has occurred.
4192 </summary>
4193 </member>
4194 <member name="M:Microsoft.Practices.ObjectBuilder2.MethodArgumentResolveOperation.#ctor(System.Type,System.String,System.String)">
4195 <summary>
4196 Initializes a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.ConstructorArgumentResolveOperation"/> class.
4197 </summary>
4198 <param name="typeBeingConstructed">The type that is being constructed.</param>
4199 <param name="methodSignature">A string representing the method being called.</param>
4200 <param name="parameterName">Parameter being resolved.</param>
4201 </member>
4202 <member name="M:Microsoft.Practices.ObjectBuilder2.MethodArgumentResolveOperation.ToString">
4203 <summary>
4204 Generate the string describing what parameter was being resolved.
4205 </summary>
4206 <returns>The description string.</returns>
4207 </member>
4208 <member name="P:Microsoft.Practices.ObjectBuilder2.MethodArgumentResolveOperation.MethodSignature">
4209 <summary>
4210 String describing the method being set up.
4211 </summary>
4212 </member>
4213 <member name="P:Microsoft.Practices.ObjectBuilder2.MethodArgumentResolveOperation.ParameterName">
4214 <summary>
4215 Parameter that's being resolved.
4216 </summary>
4217 </member>
4218 <member name="T:Microsoft.Practices.ObjectBuilder2.PropertyOperation">
4219 <summary>
4220 A base class that holds the information shared by all operations
4221 performed by the container while setting properties.
4222 </summary>
4223 </member>
4224 <member name="M:Microsoft.Practices.ObjectBuilder2.PropertyOperation.#ctor(System.Type,System.String)">
4225 <summary>
4226 Initializes a new instance of the <see cref="T:System.Object"/> class.
4227 </summary>
4228 </member>
4229 <member name="M:Microsoft.Practices.ObjectBuilder2.PropertyOperation.ToString">
4230 <summary>
4231 Generate the description of this operation.
4232 </summary>
4233 <returns>The string.</returns>
4234 </member>
4235 <member name="M:Microsoft.Practices.ObjectBuilder2.PropertyOperation.GetDescriptionFormat">
4236 <summary>
4237 Get a format string used to create the description. Called by
4238 the base <see cref="M:Microsoft.Practices.ObjectBuilder2.PropertyOperation.ToString"/> method.
4239 </summary>
4240 <returns>The format string.</returns>
4241 </member>
4242 <member name="P:Microsoft.Practices.ObjectBuilder2.PropertyOperation.PropertyName">
4243 <summary>
4244 The property value currently being resolved.
4245 </summary>
4246 </member>
4247 <member name="T:Microsoft.Practices.ObjectBuilder2.ResolvingPropertyValueOperation">
4248 <summary>
4249 This class records the information about which property value is currently
4250 being resolved, and is responsible for generating the error string required when
4251 an error has occurred.
4252 </summary>
4253 </member>
4254 <member name="M:Microsoft.Practices.ObjectBuilder2.ResolvingPropertyValueOperation.#ctor(System.Type,System.String)">
4255 <summary>
4256 Initializes a new instance of the <see cref="T:System.Object"/> class.
4257 </summary>
4258 </member>
4259 <member name="M:Microsoft.Practices.ObjectBuilder2.ResolvingPropertyValueOperation.GetDescriptionFormat">
4260 <summary>
4261 Get a format string used to create the description. Called by
4262 the base <see cref="M:Microsoft.Practices.ObjectBuilder2.PropertyOperation.ToString"/> method.
4263 </summary>
4264 <returns>The format string.</returns>
4265 </member>
4266 <member name="T:Microsoft.Practices.ObjectBuilder2.SettingPropertyOperation">
4267 <summary>
4268 This class records the information about which property value is currently
4269 being set, and is responsible for generating the error string required when
4270 an error has occurred.
4271 </summary>
4272 </member>
4273 <member name="M:Microsoft.Practices.ObjectBuilder2.SettingPropertyOperation.#ctor(System.Type,System.String)">
4274 <summary>
4275 Initializes a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.SettingPropertyOperation"/> class.
4276 </summary>
4277 <param name="typeBeingConstructed">Type property is on.</param>
4278 <param name="propertyName">Name of property being set.</param>
4279 </member>
4280 <member name="M:Microsoft.Practices.ObjectBuilder2.SettingPropertyOperation.GetDescriptionFormat">
4281 <summary>
4282 Get a format string used to create the description. Called by
4283 the base <see cref="M:Microsoft.Practices.ObjectBuilder2.PropertyOperation.ToString"/> method.
4284 </summary>
4285 <returns>The format string.</returns>
4286 </member>
4287 <member name="T:Microsoft.Practices.ObjectBuilder2.DeferredResolveBuildPlanPolicy">
4288 <summary>
4289 Build plan for <see cref="T:System.Func`1"/> that will
4290 return a func that will resolve the requested type
4291 through this container later.
4292 </summary>
4293 </member>
4294 <member name="M:Microsoft.Practices.ObjectBuilder2.FactoryDelegateBuildPlanPolicy.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
4295 <summary>
4296 Creates an instance of this build plan's type, or fills
4297 in the existing type if passed in.
4298 </summary>
4299 <param name="context">Context used to build up the object.</param>
4300 </member>
4301 <member name="T:Microsoft.Practices.ObjectBuilder2.MethodSelectorPolicy`1">
4302 <summary>
4303 An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IMethodSelectorPolicy"/> that selects
4304 methods by looking for the given <typeparamref name="TMarkerAttribute"/>
4305 attribute on those methods.
4306 </summary>
4307 <typeparam name="TMarkerAttribute">Type of attribute used to mark methods
4308 to inject.</typeparam>
4309 </member>
4310 <member name="M:Microsoft.Practices.ObjectBuilder2.MethodSelectorPolicy`1.CreateResolver(System.Reflection.ParameterInfo)">
4311 <summary>
4312 Create a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> instance for the given
4313 <see cref="T:System.Reflection.ParameterInfo"/>.
4314 </summary>
4315 <param name="parameter">Parameter to create the resolver for.</param>
4316 <returns>The resolver object.</returns>
4317 </member>
4318 <member name="T:Microsoft.Practices.ObjectBuilder2.SelectedMethod">
4319 <summary>
4320 Objects of this type are the return value from <see cref="M:Microsoft.Practices.ObjectBuilder2.IMethodSelectorPolicy.SelectMethods(Microsoft.Practices.ObjectBuilder2.IBuilderContext,Microsoft.Practices.ObjectBuilder2.IPolicyList)"/>.
4321 It encapsulates the desired <see cref="T:System.Reflection.MethodInfo"/> with the string keys
4322 needed to look up the <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> for each
4323 parameter.
4324 </summary>
4325 </member>
4326 <member name="M:Microsoft.Practices.ObjectBuilder2.SelectedMethod.#ctor(System.Reflection.MethodInfo)">
4327 <summary>
4328 Create a new <see cref="T:Microsoft.Practices.ObjectBuilder2.SelectedMethod"/> instance which
4329 contains the given method.
4330 </summary>
4331 <param name="method">The method</param>
4332 </member>
4333 <member name="P:Microsoft.Practices.ObjectBuilder2.SelectedMethod.Method">
4334 <summary>
4335 The constructor this object wraps.
4336 </summary>
4337 </member>
4338 <member name="M:Microsoft.Practices.ObjectBuilder2.OverriddenBuildPlanMarkerPolicy.BuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
4339 <summary>
4340 Creates an instance of this build plan's type, or fills
4341 in the existing type if passed in.
4342 </summary>
4343 <param name="context">Context used to build up the object.</param>
4344 </member>
4345 <member name="T:Microsoft.Practices.ObjectBuilder2.PropertySelectorPolicy`1">
4346 <summary>
4347 An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IPropertySelectorPolicy"/> that looks
4348 for properties marked with the <typeparamref name="TResolutionAttribute"/>
4349 attribute that are also settable and not indexers.
4350 </summary>
4351 <typeparam name="TResolutionAttribute"></typeparam>
4352 </member>
4353 <member name="M:Microsoft.Practices.ObjectBuilder2.PropertySelectorPolicy`1.CreateResolver(System.Reflection.PropertyInfo)">
4354 <summary>
4355 Create a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> for the given
4356 property.
4357 </summary>
4358 <param name="property">Property to create resolver for.</param>
4359 <returns>The resolver object.</returns>
4360 </member>
4361 <member name="T:Microsoft.Practices.ObjectBuilder2.SelectedProperty">
4362 <summary>
4363 Objects of this type are returned from
4364 <see cref="M:Microsoft.Practices.ObjectBuilder2.IPropertySelectorPolicy.SelectProperties(Microsoft.Practices.ObjectBuilder2.IBuilderContext,Microsoft.Practices.ObjectBuilder2.IPolicyList)"/>.
4365 This class combines the <see cref="T:System.Reflection.PropertyInfo"/> about
4366 the property with the string key used to look up the resolver
4367 for this property's value.
4368 </summary>
4369 </member>
4370 <member name="M:Microsoft.Practices.ObjectBuilder2.SelectedProperty.#ctor(System.Reflection.PropertyInfo,System.String)">
4371 <summary>
4372 Create an instance of <see cref="T:Microsoft.Practices.ObjectBuilder2.SelectedProperty"/>
4373 with the given <see cref="T:System.Reflection.PropertyInfo"/> and key.
4374 </summary>
4375 <param name="property">The property.</param>
4376 <param name="key">Key to use to look up the resolver.</param>
4377 </member>
4378 <member name="P:Microsoft.Practices.ObjectBuilder2.SelectedProperty.Property">
4379 <summary>
4380 PropertyInfo for this property.
4381 </summary>
4382 </member>
4383 <member name="P:Microsoft.Practices.ObjectBuilder2.SelectedProperty.Key">
4384 <summary>
4385 Key to look up this property's resolver.
4386 </summary>
4387 </member>
4388 <member name="T:Microsoft.Practices.ObjectBuilder2.DependencyResolverTrackerPolicy">
4389 <summary>
4390 Implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverTrackerPolicy"/>.
4391 </summary>
4392 </member>
4393 <member name="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverTrackerPolicy">
4394 <summary>
4395 A builder policy that lets you keep track of the current
4396 resolvers and will remove them from the given policy set.
4397 </summary>
4398 </member>
4399 <member name="M:Microsoft.Practices.ObjectBuilder2.IDependencyResolverTrackerPolicy.AddResolverKey(System.Object)">
4400 <summary>
4401 Add a new resolver to track by key.
4402 </summary>
4403 <param name="key">Key that was used to add the resolver to the policy set.</param>
4404 </member>
4405 <member name="M:Microsoft.Practices.ObjectBuilder2.IDependencyResolverTrackerPolicy.RemoveResolvers(Microsoft.Practices.ObjectBuilder2.IPolicyList)">
4406 <summary>
4407 Remove the currently tracked resolvers from the given policy list.
4408 </summary>
4409 <param name="policies">Policy list to remove the resolvers from.</param>
4410 </member>
4411 <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyResolverTrackerPolicy.AddResolverKey(System.Object)">
4412 <summary>
4413 Add a new resolver to track by key.
4414 </summary>
4415 <param name="key">Key that was used to add the resolver to the policy set.</param>
4416 </member>
4417 <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyResolverTrackerPolicy.RemoveResolvers(Microsoft.Practices.ObjectBuilder2.IPolicyList)">
4418 <summary>
4419 Remove the currently tracked resolvers from the given policy list.
4420 </summary>
4421 <param name="policies">Policy list to remove the resolvers from.</param>
4422 </member>
4423 <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyResolverTrackerPolicy.GetTracker(Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Object)">
4424 <summary>
4425 Get an instance that implements <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverTrackerPolicy"/>,
4426 either the current one in the policy set or creating a new one if it doesn't
4427 exist.
4428 </summary>
4429 <param name="policies">Policy list to look up from.</param>
4430 <param name="buildKey">Build key to track.</param>
4431 <returns>The resolver tracker.</returns>
4432 </member>
4433 <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyResolverTrackerPolicy.TrackKey(Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Object,System.Object)">
4434 <summary>
4435 Add a key to be tracked to the current tracker.
4436 </summary>
4437 <param name="policies">Policy list containing the resolvers and trackers.</param>
4438 <param name="buildKey">Build key for the resolvers being tracked.</param>
4439 <param name="resolverKey">Key for the resolver.</param>
4440 </member>
4441 <member name="M:Microsoft.Practices.ObjectBuilder2.DependencyResolverTrackerPolicy.RemoveResolvers(Microsoft.Practices.ObjectBuilder2.IPolicyList,System.Object)">
4442 <summary>
4443 Remove the resolvers for the given build key.
4444 </summary>
4445 <param name="policies">Policy list containing the build key.</param>
4446 <param name="buildKey">Build key.</param>
4447 </member>
4448 <member name="T:Microsoft.Practices.ObjectBuilder2.FixedTypeResolverPolicy">
4449 <summary>
4450 An implementation of <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> that
4451 calls back into the build chain to build up the dependency, passing
4452 a type given at compile time as its build key.
4453 </summary>
4454 </member>
4455 <member name="M:Microsoft.Practices.ObjectBuilder2.FixedTypeResolverPolicy.#ctor(System.Type)">
4456 <summary>
4457 Create a new instance storing the given type.
4458 </summary>
4459 <param name="typeToBuild">Type to resolve.</param>
4460 </member>
4461 <member name="M:Microsoft.Practices.ObjectBuilder2.FixedTypeResolverPolicy.Resolve(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
4462 <summary>
4463 Get the value for a dependency.
4464 </summary>
4465 <param name="context">Current build context.</param>
4466 <returns>The value for the dependency.</returns>
4467 </member>
4468 <member name="T:Microsoft.Practices.ObjectBuilder2.IStagedStrategyChain">
4469 <summary>
4470 This interface defines a standard method to convert any
4471 <see cref="T:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1"/> regardless
4472 of the stage enum into a regular, flat strategy chain.
4473 </summary>
4474 </member>
4475 <member name="M:Microsoft.Practices.ObjectBuilder2.IStagedStrategyChain.MakeStrategyChain">
4476 <summary>
4477 Convert this <see cref="T:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1"/> into
4478 a flat <see cref="T:Microsoft.Practices.ObjectBuilder2.IStrategyChain"/>.
4479 </summary>
4480 <returns>The flattened <see cref="T:Microsoft.Practices.ObjectBuilder2.IStrategyChain"/>.</returns>
4481 </member>
4482 <member name="T:Microsoft.Practices.ObjectBuilder2.IStrategyChain">
4483 <summary>
4484 Represents a chain of responsibility for builder strategies.
4485 </summary>
4486 </member>
4487 <member name="M:Microsoft.Practices.ObjectBuilder2.IStrategyChain.Reverse">
4488 <summary>
4489 Reverse the order of the strategy chain.
4490 </summary>
4491 <returns>The reversed strategy chain.</returns>
4492 </member>
4493 <member name="M:Microsoft.Practices.ObjectBuilder2.IStrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
4494 <summary>
4495 Execute this strategy chain against the given context,
4496 calling the Buildup methods on the strategies.
4497 </summary>
4498 <param name="context">Context for the build process.</param>
4499 <returns>The build up object</returns>
4500 </member>
4501 <member name="M:Microsoft.Practices.ObjectBuilder2.IStrategyChain.ExecuteTearDown(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
4502 <summary>
4503 Execute this strategy chain against the given context,
4504 calling the TearDown methods on the strategies.
4505 </summary>
4506 <param name="context">Context for the teardown process.</param>
4507 </member>
4508 <member name="T:Microsoft.Practices.ObjectBuilder2.LifetimeStrategy">
4509 <summary>
4510 An <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy"/> implementation that uses
4511 a <see cref="T:Microsoft.Practices.ObjectBuilder2.ILifetimePolicy"/> to figure out if an object
4512 has already been created and to update or remove that
4513 object from some backing store.
4514 </summary>
4515 </member>
4516 <member name="M:Microsoft.Practices.ObjectBuilder2.LifetimeStrategy.PreBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
4517 <summary>
4518 Called during the chain of responsibility for a build operation. The
4519 PreBuildUp method is called when the chain is being executed in the
4520 forward direction.
4521 </summary>
4522 <param name="context">Context of the build operation.</param>
4523 </member>
4524 <member name="M:Microsoft.Practices.ObjectBuilder2.LifetimeStrategy.PostBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
4525 <summary>
4526 Called during the chain of responsibility for a build operation. The
4527 PostBuildUp method is called when the chain has finished the PreBuildUp
4528 phase and executes in reverse order from the PreBuildUp calls.
4529 </summary>
4530 <param name="context">Context of the build operation.</param>
4531 </member>
4532 <member name="T:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1">
4533 <summary>
4534 Represents a chain of responsibility for builder strategies partitioned by stages.
4535 </summary>
4536 <typeparam name="TStageEnum">The stage enumeration to partition the strategies.</typeparam>
4537 </member>
4538 <member name="M:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1.#ctor">
4539 <summary>
4540 Initialize a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1"/> class.
4541 </summary>
4542 </member>
4543 <member name="M:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1.#ctor(Microsoft.Practices.ObjectBuilder2.StagedStrategyChain{`0})">
4544 <summary>
4545 Initialize a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1"/> class with an inner strategy chain to use when building.
4546 </summary>
4547 <param name="innerChain">The inner strategy chain to use first when finding strategies in the build operation.</param>
4548 </member>
4549 <member name="M:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1.Add(Microsoft.Practices.ObjectBuilder2.IBuilderStrategy,`0)">
4550 <summary>
4551 Adds a strategy to the chain at a particular stage.
4552 </summary>
4553 <param name="strategy">The strategy to add to the chain.</param>
4554 <param name="stage">The stage to add the strategy.</param>
4555 </member>
4556 <member name="M:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1.AddNew``1(`0)">
4557 <summary>
4558 Add a new strategy for the <paramref name="stage"/>.
4559 </summary>
4560 <typeparam name="TStrategy">The <see cref="T:System.Type"/> of <see cref="T:Microsoft.Practices.ObjectBuilder2.IBuilderStrategy"/></typeparam>
4561 <param name="stage">The stage to add the strategy.</param>
4562 </member>
4563 <member name="M:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1.Clear">
4564 <summary>
4565 Clear the current strategy chain list.
4566 </summary>
4567 <remarks>
4568 This will not clear the inner strategy chain if this instane was created with one.
4569 </remarks>
4570 </member>
4571 <member name="M:Microsoft.Practices.ObjectBuilder2.StagedStrategyChain`1.MakeStrategyChain">
4572 <summary>
4573 Makes a strategy chain based on this instance.
4574 </summary>
4575 <returns>A new <see cref="T:Microsoft.Practices.ObjectBuilder2.StrategyChain"/>.</returns>
4576 </member>
4577 <member name="T:Microsoft.Practices.ObjectBuilder2.StrategyChain">
4578 <summary>
4579 Represents a chain of responsibility for builder strategies.
4580 </summary>
4581 </member>
4582 <member name="M:Microsoft.Practices.ObjectBuilder2.StrategyChain.#ctor">
4583 <summary>
4584 Initialzie a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.StrategyChain"/> class.
4585 </summary>
4586 </member>
4587 <member name="M:Microsoft.Practices.ObjectBuilder2.StrategyChain.#ctor(System.Collections.IEnumerable)">
4588 <summary>
4589 Initialzie a new instance of the <see cref="T:Microsoft.Practices.ObjectBuilder2.StrategyChain"/> class with a colleciton of strategies.
4590 </summary>
4591 <param name="strategies">A collection of strategies to initialize the chain.</param>
4592 </member>
4593 <member name="M:Microsoft.Practices.ObjectBuilder2.StrategyChain.Add(Microsoft.Practices.ObjectBuilder2.IBuilderStrategy)">
4594 <summary>
4595 Adds a strategy to the chain.
4596 </summary>
4597 <param name="strategy">The strategy to add to the chain.</param>
4598 </member>
4599 <member name="M:Microsoft.Practices.ObjectBuilder2.StrategyChain.AddRange(System.Collections.IEnumerable)">
4600 <summary>
4601 Adds strategies to the chain.
4602 </summary>
4603 <param name="strategyEnumerable">The strategies to add to the chain.</param>
4604 </member>
4605 <member name="M:Microsoft.Practices.ObjectBuilder2.StrategyChain.Reverse">
4606 <summary>
4607 Reverse the order of the strategy chain.
4608 </summary>
4609 <returns>The reversed strategy chain.</returns>
4610 </member>
4611 <member name="M:Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteBuildUp(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
4612 <summary>
4613 Execute this strategy chain against the given context to build up.
4614 </summary>
4615 <param name="context">Context for the build processes.</param>
4616 <returns>The build up object</returns>
4617 </member>
4618 <member name="M:Microsoft.Practices.ObjectBuilder2.StrategyChain.ExecuteTearDown(Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
4619 <summary>
4620 Execute this strategy chain against the given context,
4621 calling the TearDown methods on the strategies.
4622 </summary>
4623 <param name="context">Context for the teardown process.</param>
4624 </member>
4625 <member name="M:Microsoft.Practices.ObjectBuilder2.StrategyChain.System#Collections#Generic#IEnumerable{Microsoft#Practices#ObjectBuilder2#IBuilderStrategy}#GetEnumerator">
4626 <summary>
4627 Returns an enumerator that iterates through the collection.
4628 </summary>
4629
4630 <returns>
4631 A <see cref="T:System.Collections.Generic.IEnumerator`1"></see> that can be used to iterate through the collection.
4632 </returns>
4633 <filterpriority>1</filterpriority>
4634 </member>
4635 <member name="M:Microsoft.Practices.ObjectBuilder2.StrategyChain.GetEnumerator">
4636 <summary>
4637 Returns an enumerator that iterates through a collection.
4638 </summary>
4639
4640 <returns>
4641 An <see cref="T:System.Collections.IEnumerator"></see> object that can be used to iterate through the collection.
4642 </returns>
4643 <filterpriority>2</filterpriority>
4644 </member>
4645 <member name="T:Microsoft.Practices.ObjectBuilder2.EnumerableExtensions">
4646 <summary>
4647 The almost inevitable collection of extra helper methods on
4648 <see cref="T:System.Collections.Generic.IEnumerable`1"/> to augment the rich set of what
4649 Linq already gives us.
4650 </summary>
4651 </member>
4652 <member name="M:Microsoft.Practices.ObjectBuilder2.EnumerableExtensions.ForEach``1(System.Collections.Generic.IEnumerable{``0},System.Action{``0})">
4653 <summary>
4654 Execute the provided <paramref name="action"/> on every item in <paramref name="sequence"/>.
4655 </summary>
4656 <typeparam name="TItem">Type of the items stored in <paramref name="sequence"/></typeparam>
4657 <param name="sequence">Sequence of items to process.</param>
4658 <param name="action">Code to run over each item.</param>
4659 </member>
4660 <member name="M:Microsoft.Practices.ObjectBuilder2.EnumerableExtensions.JoinStrings``1(System.Collections.Generic.IEnumerable{``0},System.String,System.Func{``0,System.String})">
4661 <summary>
4662 Create a single string from a sequenc of items, separated by the provided <paramref name="separator"/>,
4663 and with the conversion to string done by the given <paramref name="converter"/>.
4664 </summary>
4665 <remarks>This method does basically the same thing as <see cref="M:System.String.Join(System.String,System.String[])"/>,
4666 but will work on any sequence of items, not just arrays.</remarks>
4667 <typeparam name="TItem">Type of items in the sequence.</typeparam>
4668 <param name="sequence">Sequence of items to convert.</param>
4669 <param name="separator">Separator to place between the items in the string.</param>
4670 <param name="converter">The conversion function to change TItem -&gt; string.</param>
4671 <returns>The resulting string.</returns>
4672 </member>
4673 <member name="M:Microsoft.Practices.ObjectBuilder2.EnumerableExtensions.JoinStrings``1(System.Collections.Generic.IEnumerable{``0},System.String)">
4674 <summary>
4675 Create a single string from a sequenc of items, separated by the provided <paramref name="separator"/>,
4676 and with the conversion to string done by the item's <see cref="M:System.Object.ToString"/> method.
4677 </summary>
4678 <remarks>This method does basically the same thing as <see cref="M:System.String.Join(System.String,System.String[])"/>,
4679 but will work on any sequence of items, not just arrays.</remarks>
4680 <typeparam name="TItem">Type of items in the sequence.</typeparam>
4681 <param name="sequence">Sequence of items to convert.</param>
4682 <param name="separator">Separator to place between the items in the string.</param>
4683 <returns>The resulting string.</returns>
4684 </member>
4685 <member name="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey">
4686 <summary>
4687 Build key used to combine a type object with a string name. Used by
4688 ObjectBuilder to indicate exactly what is being built.
4689 </summary>
4690 </member>
4691 <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.#ctor(System.Type,System.String)">
4692 <summary>
4693 Create a new <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instance with the given
4694 type and name.
4695 </summary>
4696 <param name="type"><see cref="P:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.Type"/> to build.</param>
4697 <param name="name">Key to use to look up type mappings and singletons.</param>
4698 </member>
4699 <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.#ctor(System.Type)">
4700 <summary>
4701 Create a new <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instance for the default
4702 buildup of the given type.
4703 </summary>
4704 <param name="type"><see cref="P:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.Type"/> to build.</param>
4705 </member>
4706 <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.Make``1">
4707 <summary>
4708 This helper method creates a new <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instance. It is
4709 initialized for the default key for the given type.
4710 </summary>
4711 <typeparam name="T">Type to build.</typeparam>
4712 <returns>A new <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instance.</returns>
4713 </member>
4714 <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.Make``1(System.String)">
4715 <summary>
4716 This helper method creates a new <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instance for
4717 the given type and key.
4718 </summary>
4719 <typeparam name="T">Type to build</typeparam>
4720 <param name="name">Key to use to look up type mappings and singletons.</param>
4721 <returns>A new <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instance initialized with the given type and name.</returns>
4722 </member>
4723 <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.Equals(System.Object)">
4724 <summary>
4725 Compare two <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instances.
4726 </summary>
4727 <remarks>Two <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instances compare equal
4728 if they contain the same name and the same type. Also, comparing
4729 against a different type will also return false.</remarks>
4730 <param name="obj">Object to compare to.</param>
4731 <returns>True if the two keys are equal, false if not.</returns>
4732 </member>
4733 <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.GetHashCode">
4734 <summary>
4735 Calculate a hash code for this instance.
4736 </summary>
4737 <returns>A hash code.</returns>
4738 </member>
4739 <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.op_Equality(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey,Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey)">
4740 <summary>
4741 Compare two <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instances for equality.
4742 </summary>
4743 <remarks>Two <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instances compare equal
4744 if they contain the same name and the same type.</remarks>
4745 <param name="left">First of the two keys to compare.</param>
4746 <param name="right">Second of the two keys to compare.</param>
4747 <returns>True if the values of the keys are the same, else false.</returns>
4748 </member>
4749 <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.op_Inequality(Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey,Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey)">
4750 <summary>
4751 Compare two <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instances for inequality.
4752 </summary>
4753 <remarks>Two <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> instances compare equal
4754 if they contain the same name and the same type. If either field differs
4755 the keys are not equal.</remarks>
4756 <param name="left">First of the two keys to compare.</param>
4757 <param name="right">Second of the two keys to compare.</param>
4758 <returns>false if the values of the keys are the same, else true.</returns>
4759 </member>
4760 <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.ToString">
4761 <summary>
4762 Formats the build key as a string (primarily for debugging).
4763 </summary>
4764 <returns>A readable string representation of the build key.</returns>
4765 </member>
4766 <member name="P:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.Type">
4767 <summary>
4768 Return the <see cref="P:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.Type"/> stored in this build key.
4769 </summary>
4770 <value>The type to build.</value>
4771 </member>
4772 <member name="P:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey.Name">
4773 <summary>
4774 Returns the name stored in this build key.
4775 </summary>
4776 <remarks>The name to use when building.</remarks>
4777 </member>
4778 <member name="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey`1">
4779 <summary>
4780 A generic version of <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey"/> so that
4781 you can new up a key using generic syntax.
4782 </summary>
4783 <typeparam name="T">Type for the key.</typeparam>
4784 </member>
4785 <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey`1.#ctor">
4786 <summary>
4787 Construct a new <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey`1"/> that
4788 specifies the given type.
4789 </summary>
4790 </member>
4791 <member name="M:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey`1.#ctor(System.String)">
4792 <summary>
4793 Construct a new <see cref="T:Microsoft.Practices.ObjectBuilder2.NamedTypeBuildKey`1"/> that
4794 specifies the given type and name.
4795 </summary>
4796 <param name="name">Name for the key.</param>
4797 </member>
4798 <member name="T:Microsoft.Practices.ObjectBuilder2.Sequence">
4799 <summary>
4800 A series of helper methods to deal with sequences -
4801 objects that implement <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
4802 </summary>
4803 </member>
4804 <member name="M:Microsoft.Practices.ObjectBuilder2.Sequence.Collect``1(``0[])">
4805 <summary>
4806 A function that turns an arbitrary parameter list into an
4807 <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
4808 </summary>
4809 <typeparam name="T">Type of arguments.</typeparam>
4810 <param name="arguments">The items to put into the collection.</param>
4811 <returns>An array that contains the values of the <paramref name="arguments"/>.</returns>
4812 </member>
4813 <member name="M:Microsoft.Practices.ObjectBuilder2.Sequence.Zip``2(System.Collections.Generic.IEnumerable{``0},System.Collections.Generic.IEnumerable{``1})">
4814 <summary>
4815 Given two sequences, return a new sequence containing the corresponding values
4816 from each one.
4817 </summary>
4818 <typeparam name="TFirstSequenceElement">Type of first sequence.</typeparam>
4819 <typeparam name="TSecondSequenceElement">Type of second sequence.</typeparam>
4820 <param name="sequence1">First sequence of items.</param>
4821 <param name="sequence2">Second sequence of items.</param>
4822 <returns>New sequence of pairs. This sequence ends when the shorter of sequence1 and sequence2 does.</returns>
4823 </member>
4824 <member name="T:Microsoft.Practices.Unity.ParameterOverride">
4825 <summary>
4826 A <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/> class that lets you
4827 override a named parameter passed to a constructor.
4828 </summary>
4829 </member>
4830 <member name="M:Microsoft.Practices.Unity.ParameterOverride.#ctor(System.String,System.Object)">
4831 <summary>
4832 Construct a new <see cref="T:Microsoft.Practices.Unity.ParameterOverride"/> object that will
4833 override the given named constructor parameter, and pass the given
4834 value.
4835 </summary>
4836 <param name="parameterName">Name of the constructor parameter.</param>
4837 <param name="parameterValue">Value to pass for the constructor.</param>
4838 </member>
4839 <member name="M:Microsoft.Practices.Unity.ParameterOverride.GetResolver(Microsoft.Practices.ObjectBuilder2.IBuilderContext,System.Type)">
4840 <summary>
4841 Return a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> that can be used to give a value
4842 for the given desired dependency.
4843 </summary>
4844 <param name="context">Current build context.</param>
4845 <param name="dependencyType">Type of dependency desired.</param>
4846 <returns>a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> object if this override applies, null if not.</returns>
4847 </member>
4848 <member name="T:Microsoft.Practices.Unity.ParameterOverrides">
4849 <summary>
4850 A convenience form of <see cref="T:Microsoft.Practices.Unity.ParameterOverride"/> that lets you
4851 specify multiple parameter overrides in one shot rather than having
4852 to construct multiple objects.
4853 </summary>
4854 </member>
4855 <member name="M:Microsoft.Practices.Unity.ParameterOverrides.MakeOverride(System.String,System.Object)">
4856 <summary>
4857 When implemented in derived classes, this method is called from the <see cref="M:Microsoft.Practices.Unity.OverrideCollection`3.Add(`1,`2)"/>
4858 method to create the actual <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/> objects.
4859 </summary>
4860 <param name="key">Key value to create the resolver.</param>
4861 <param name="value">Value to store in the resolver.</param>
4862 <returns>The created <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/>.</returns>
4863 </member>
4864 <member name="T:Microsoft.Practices.Unity.PropertyOverride">
4865 <summary>
4866 A <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/> that lets you override
4867 the value for a specified property.
4868 </summary>
4869 </member>
4870 <member name="M:Microsoft.Practices.Unity.PropertyOverride.#ctor(System.String,System.Object)">
4871 <summary>
4872 Create an instance of <see cref="T:Microsoft.Practices.Unity.PropertyOverride"/>.
4873 </summary>
4874 <param name="propertyName">The property name.</param>
4875 <param name="propertyValue">Value to use for the property.</param>
4876 </member>
4877 <member name="M:Microsoft.Practices.Unity.PropertyOverride.GetResolver(Microsoft.Practices.ObjectBuilder2.IBuilderContext,System.Type)">
4878 <summary>
4879 Return a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> that can be used to give a value
4880 for the given desired dependency.
4881 </summary>
4882 <param name="context">Current build context.</param>
4883 <param name="dependencyType">Type of dependency desired.</param>
4884 <returns>a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> object if this override applies, null if not.</returns>
4885 </member>
4886 <member name="T:Microsoft.Practices.Unity.PropertyOverrides">
4887 <summary>
4888 A convenience form of <see cref="T:Microsoft.Practices.Unity.PropertyOverride"/> that lets you
4889 specify multiple property overrides in one shot rather than having
4890 to construct multiple objects.
4891 </summary>
4892 </member>
4893 <member name="M:Microsoft.Practices.Unity.PropertyOverrides.MakeOverride(System.String,System.Object)">
4894 <summary>
4895 When implemented in derived classes, this method is called from the <see cref="M:Microsoft.Practices.Unity.OverrideCollection`3.Add(`1,`2)"/>
4896 method to create the actual <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/> objects.
4897 </summary>
4898 <param name="key">Key value to create the resolver.</param>
4899 <param name="value">Value to store in the resolver.</param>
4900 <returns>The created <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/>.</returns>
4901 </member>
4902 <member name="T:Microsoft.Practices.Unity.ResolutionFailedException">
4903 <summary>
4904 The exception thrown by the Unity container when
4905 an attempt to resolve a dependency fails.
4906 </summary>
4907 </member>
4908 <member name="M:Microsoft.Practices.Unity.ResolutionFailedException.#ctor(System.Type,System.String,System.Exception,Microsoft.Practices.ObjectBuilder2.IBuilderContext)">
4909 <summary>
4910 Create a new <see cref="T:Microsoft.Practices.Unity.ResolutionFailedException"/> that records
4911 the exception for the given type and name.
4912 </summary>
4913 <param name="typeRequested">Type requested from the container.</param>
4914 <param name="nameRequested">Name requested from the container.</param>
4915 <param name="innerException">The actual exception that caused the failure of the build.</param>
4916 <param name="context">The build context representing the failed operation.</param>
4917 </member>
4918 <member name="P:Microsoft.Practices.Unity.ResolutionFailedException.TypeRequested">
4919 <summary>
4920 The type that was being requested from the container at the time of failure.
4921 </summary>
4922 </member>
4923 <member name="P:Microsoft.Practices.Unity.ResolutionFailedException.NameRequested">
4924 <summary>
4925 The name that was being requested from the container at the time of failure.
4926 </summary>
4927 </member>
4928 <member name="T:Microsoft.Practices.Unity.StaticFactory.IStaticFactoryConfiguration">
4929 <summary>
4930 Interface defining the configuration interface exposed by the
4931 Static Factory extension.
4932 </summary>
4933 </member>
4934 <member name="M:Microsoft.Practices.Unity.StaticFactory.IStaticFactoryConfiguration.RegisterFactory``1(System.Func{Microsoft.Practices.Unity.IUnityContainer,System.Object})">
4935 <summary>
4936 Register the given factory delegate to be called when the container is
4937 asked to resolve <typeparamref name="TTypeToBuild"/>.
4938 </summary>
4939 <typeparam name="TTypeToBuild">Type that will be requested from the container.</typeparam>
4940 <param name="factoryMethod">Delegate to invoke to create the instance.</param>
4941 <returns>The container extension object this method was invoked on.</returns>
4942 </member>
4943 <member name="M:Microsoft.Practices.Unity.StaticFactory.IStaticFactoryConfiguration.RegisterFactory``1(System.String,System.Func{Microsoft.Practices.Unity.IUnityContainer,System.Object})">
4944 <summary>
4945 Register the given factory delegate to be called when the container is
4946 asked to resolve <typeparamref name="TTypeToBuild"/> and <paramref name="name"/>.
4947 </summary>
4948 <typeparam name="TTypeToBuild">Type that will be requested from the container.</typeparam>
4949 <param name="name">The name that will be used when requesting to resolve this type.</param>
4950 <param name="factoryMethod">Delegate to invoke to create the instance.</param>
4951 <returns>The container extension object this method was invoked on.</returns>
4952 </member>
4953 <member name="T:Microsoft.Practices.Unity.StaticFactory.StaticFactoryExtension">
4954 <summary>
4955 A <see cref="T:Microsoft.Practices.Unity.UnityContainerExtension"/> that lets you register a
4956 delegate with the container to create an object, rather than calling
4957 the object's constructor.
4958 </summary>
4959 </member>
4960 <member name="M:Microsoft.Practices.Unity.StaticFactory.StaticFactoryExtension.Initialize">
4961 <summary>
4962 Initialize this extension. This particular extension requires no
4963 initialization work.
4964 </summary>
4965 </member>
4966 <member name="M:Microsoft.Practices.Unity.StaticFactory.StaticFactoryExtension.RegisterFactory``1(System.String,System.Func{Microsoft.Practices.Unity.IUnityContainer,System.Object})">
4967 <summary>
4968 Register the given factory delegate to be called when the container is
4969 asked to resolve <typeparamref name="TTypeToBuild"/> and <paramref name="name"/>.
4970 </summary>
4971 <typeparam name="TTypeToBuild">Type that will be requested from the container.</typeparam>
4972 <param name="name">The name that will be used when requesting to resolve this type.</param>
4973 <param name="factoryMethod">Delegate to invoke to create the instance.</param>
4974 <returns>The container extension object this method was invoked on.</returns>
4975 </member>
4976 <member name="M:Microsoft.Practices.Unity.StaticFactory.StaticFactoryExtension.RegisterFactory``1(System.Func{Microsoft.Practices.Unity.IUnityContainer,System.Object})">
4977 <summary>
4978 Register the given factory delegate to be called when the container is
4979 asked to resolve <typeparamref name="TTypeToBuild"/>.
4980 </summary>
4981 <typeparam name="TTypeToBuild">Type that will be requested from the container.</typeparam>
4982 <param name="factoryMethod">Delegate to invoke to create the instance.</param>
4983 <returns>The container extension object this method was invoked on.</returns>
4984 </member>
4985 <member name="T:Microsoft.Practices.Unity.TypeBasedOverride">
4986 <summary>
4987 An implementation of <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/> that
4988 acts as a decorator over another <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/>.
4989 This checks to see if the current type being built is the
4990 right one before checking the inner <see cref="T:Microsoft.Practices.Unity.ResolverOverride"/>.
4991 </summary>
4992 </member>
4993 <member name="M:Microsoft.Practices.Unity.TypeBasedOverride.#ctor(System.Type,Microsoft.Practices.Unity.ResolverOverride)">
4994 <summary>
4995 Create an instance of <see cref="T:Microsoft.Practices.Unity.TypeBasedOverride"/>
4996 </summary>
4997 <param name="targetType">Type to check for.</param>
4998 <param name="innerOverride">Inner override to check after type matches.</param>
4999 </member>
5000 <member name="M:Microsoft.Practices.Unity.TypeBasedOverride.GetResolver(Microsoft.Practices.ObjectBuilder2.IBuilderContext,System.Type)">
5001 <summary>
5002 Return a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> that can be used to give a value
5003 for the given desired dependency.
5004 </summary>
5005 <param name="context">Current build context.</param>
5006 <param name="dependencyType">Type of dependency desired.</param>
5007 <returns>a <see cref="T:Microsoft.Practices.ObjectBuilder2.IDependencyResolverPolicy"/> object if this override applies, null if not.</returns>
5008 </member>
5009 <member name="T:Microsoft.Practices.Unity.TypeBasedOverride`1">
5010 <summary>
5011 A convenience version of <see cref="T:Microsoft.Practices.Unity.TypeBasedOverride"/> that lets you
5012 specify the type to construct via generics syntax.
5013 </summary>
5014 <typeparam name="T">Type to check for.</typeparam>
5015 </member>
5016 <member name="M:Microsoft.Practices.Unity.TypeBasedOverride`1.#ctor(Microsoft.Practices.Unity.ResolverOverride)">
5017 <summary>
5018 Create an instance of <see cref="T:Microsoft.Practices.Unity.TypeBasedOverride`1"/>.
5019 </summary>
5020 <param name="innerOverride">Inner override to check after type matches.</param>
5021 </member>
5022 <member name="T:Microsoft.Practices.Unity.UnityContainer">
5023 <summary>
5024 A simple, extensible dependency injection container.
5025 </summary>
5026 </member>
5027 <member name="M:Microsoft.Practices.Unity.UnityContainer.#ctor">
5028 <summary>
5029 Create a default <see cref="T:Microsoft.Practices.Unity.UnityContainer"/>.
5030 </summary>
5031 </member>
5032 <member name="M:Microsoft.Practices.Unity.UnityContainer.#ctor(Microsoft.Practices.Unity.UnityContainer)">
5033 <summary>
5034 Create a <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> with the given parent container.
5035 </summary>
5036 <param name="parent">The parent <see cref="T:Microsoft.Practices.Unity.UnityContainer"/>. The current object
5037 will apply its own settings first, and then check the parent for additional ones.</param>
5038 </member>
5039 <member name="M:Microsoft.Practices.Unity.UnityContainer.RegisterType(System.Type,System.Type,System.String,Microsoft.Practices.Unity.LifetimeManager,Microsoft.Practices.Unity.InjectionMember[])">
5040 <summary>
5041 RegisterType a type mapping with the container, where the created instances will use
5042 the given <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/>.
5043 </summary>
5044 <param name="from"><see cref="T:System.Type"/> that will be requested.</param>
5045 <param name="to"><see cref="T:System.Type"/> that will actually be returned.</param>
5046 <param name="name">Name to use for registration, null if a default registration.</param>
5047 <param name="lifetimeManager">The <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> that controls the lifetime
5048 of the returned instance.</param>
5049 <param name="injectionMembers">Injection configuration objects.</param>
5050 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5051 </member>
5052 <member name="M:Microsoft.Practices.Unity.UnityContainer.RegisterInstance(System.Type,System.String,System.Object,Microsoft.Practices.Unity.LifetimeManager)">
5053 <summary>
5054 RegisterType an instance with the container.
5055 </summary>
5056 <remarks>
5057 <para>
5058 Instance registration is much like setting a type as a singleton, except that instead
5059 of the container creating the instance the first time it is requested, the user
5060 creates the instance ahead of type and adds that instance to the container.
5061 </para>
5062 </remarks>
5063 <param name="t">Type of instance to register (may be an implemented interface instead of the full type).</param>
5064 <param name="instance">Object to returned.</param>
5065 <param name="name">Name for registration.</param>
5066 <param name="lifetime">
5067 <para>If true, the container will take over the lifetime of the instance,
5068 calling Dispose on it (if it's <see cref="T:System.IDisposable"/>) when the container is Disposed.</para>
5069 <para>
5070 If false, container will not maintain a strong reference to <paramref name="instance"/>. User is reponsible
5071 for disposing instance, and for keeping the instance from being garbage collected.</para></param>
5072 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5073 </member>
5074 <member name="M:Microsoft.Practices.Unity.UnityContainer.Resolve(System.Type,System.String,Microsoft.Practices.Unity.ResolverOverride[])">
5075 <summary>
5076 Get an instance of the requested type with the given name from the container.
5077 </summary>
5078 <param name="t"><see cref="T:System.Type"/> of object to get from the container.</param>
5079 <param name="name">Name of the object to retrieve.</param>
5080 <param name="resolverOverrides">Any overrides for the resolve call.</param>
5081 <returns>The retrieved object.</returns>
5082 </member>
5083 <member name="M:Microsoft.Practices.Unity.UnityContainer.ResolveAll(System.Type,Microsoft.Practices.Unity.ResolverOverride[])">
5084 <summary>
5085 Return instances of all registered types requested.
5086 </summary>
5087 <remarks>
5088 <para>
5089 This method is useful if you've registered multiple types with the same
5090 <see cref="T:System.Type"/> but different names.
5091 </para>
5092 <para>
5093 Be aware that this method does NOT return an instance for the default (unnamed) registration.
5094 </para>
5095 </remarks>
5096 <param name="t">The type requested.</param>
5097 <param name="resolverOverrides">Any overrides for the resolve calls.</param>
5098 <returns>Set of objects of type <paramref name="t"/>.</returns>
5099 </member>
5100 <member name="M:Microsoft.Practices.Unity.UnityContainer.BuildUp(System.Type,System.Object,System.String,Microsoft.Practices.Unity.ResolverOverride[])">
5101 <summary>
5102 Run an existing object through the container and perform injection on it.
5103 </summary>
5104 <remarks>
5105 <para>
5106 This method is useful when you don't control the construction of an
5107 instance (ASP.NET pages or objects created via XAML, for instance)
5108 but you still want properties and other injection performed.
5109 </para></remarks>
5110 <param name="t"><see cref="T:System.Type"/> of object to perform injection on.</param>
5111 <param name="existing">Instance to build up.</param>
5112 <param name="name">name to use when looking up the typemappings and other configurations.</param>
5113 <param name="resolverOverrides">Any overrides for the buildup.</param>
5114 <returns>The resulting object. By default, this will be <paramref name="existing"/>, but
5115 container extensions may add things like automatic proxy creation which would
5116 cause this to return a different object (but still type compatible with <paramref name="t"/>).</returns>
5117 </member>
5118 <member name="M:Microsoft.Practices.Unity.UnityContainer.Teardown(System.Object)">
5119 <summary>
5120 Run an existing object through the container, and clean it up.
5121 </summary>
5122 <param name="o">The object to tear down.</param>
5123 </member>
5124 <member name="M:Microsoft.Practices.Unity.UnityContainer.AddExtension(Microsoft.Practices.Unity.UnityContainerExtension)">
5125 <summary>
5126 Add an extension object to the container.
5127 </summary>
5128 <param name="extension"><see cref="T:Microsoft.Practices.Unity.UnityContainerExtension"/> to add.</param>
5129 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5130 </member>
5131 <member name="M:Microsoft.Practices.Unity.UnityContainer.Configure(System.Type)">
5132 <summary>
5133 Get access to a configuration interface exposed by an extension.
5134 </summary>
5135 <remarks>Extensions can expose configuration interfaces as well as adding
5136 strategies and policies to the container. This method walks the list of
5137 added extensions and returns the first one that implements the requested type.
5138 </remarks>
5139 <param name="configurationInterface"><see cref="T:System.Type"/> of configuration interface required.</param>
5140 <returns>The requested extension's configuration interface, or null if not found.</returns>
5141 </member>
5142 <member name="M:Microsoft.Practices.Unity.UnityContainer.RemoveAllExtensions">
5143 <summary>
5144 Remove all installed extensions from this container.
5145 </summary>
5146 <remarks>
5147 <para>
5148 This method removes all extensions from the container, including the default ones
5149 that implement the out-of-the-box behavior. After this method, if you want to use
5150 the container again you will need to either readd the default extensions or replace
5151 them with your own.
5152 </para>
5153 <para>
5154 The registered instances and singletons that have already been set up in this container
5155 do not get removed.
5156 </para>
5157 </remarks>
5158 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5159 </member>
5160 <member name="M:Microsoft.Practices.Unity.UnityContainer.CreateChildContainer">
5161 <summary>
5162 Create a child container.
5163 </summary>
5164 <remarks>
5165 A child container shares the parent's configuration, but can be configured with different
5166 settings or lifetime.</remarks>
5167 <returns>The new child container.</returns>
5168 </member>
5169 <member name="M:Microsoft.Practices.Unity.UnityContainer.Dispose">
5170 <summary>
5171 Dispose this container instance.
5172 </summary>
5173 <remarks>
5174 Disposing the container also disposes any child containers,
5175 and disposes any instances whose lifetimes are managed
5176 by the container.
5177 </remarks>
5178 </member>
5179 <member name="M:Microsoft.Practices.Unity.UnityContainer.Dispose(System.Boolean)">
5180 <summary>
5181 Dispose this container instance.
5182 </summary>
5183 <remarks>
5184 This class doesn't have a finalizer, so <paramref name="disposing"/> will always be true.</remarks>
5185 <param name="disposing">True if being called from the IDisposable.Dispose
5186 method, false if being called from a finalizer.</param>
5187 </member>
5188 <member name="M:Microsoft.Practices.Unity.UnityContainer.ClearExistingBuildPlan(System.Type,System.String)">
5189 <summary>
5190 Remove policies associated with building this type. This removes the
5191 compiled build plan so that it can be rebuilt with the new settings
5192 the next time this type is resolved.
5193 </summary>
5194 <param name="typeToInject">Type of object to clear the plan for.</param>
5195 <param name="name">Name the object is being registered with.</param>
5196 </member>
5197 <member name="P:Microsoft.Practices.Unity.UnityContainer.Parent">
5198 <summary>
5199 The parent of this container.
5200 </summary>
5201 <value>The parent container, or null if this container doesn't have one.</value>
5202 </member>
5203 <member name="P:Microsoft.Practices.Unity.UnityContainer.Registrations">
5204 <summary>
5205 Get a sequence of <see cref="T:Microsoft.Practices.Unity.ContainerRegistration"/> that describe the current state
5206 of the container.
5207 </summary>
5208 </member>
5209 <member name="T:Microsoft.Practices.Unity.UnityContainer.ExtensionContextImpl">
5210 <summary>
5211 Implementation of the ExtensionContext that is actually used
5212 by the UnityContainer implementation.
5213 </summary>
5214 <remarks>
5215 This is a nested class so that it can access state in the
5216 container that would otherwise be inaccessible.
5217 </remarks>
5218 </member>
5219 <member name="E:Microsoft.Practices.Unity.UnityContainer.ExtensionContextImpl.RegisteringInstance">
5220 <summary>
5221 This event is raised when the <see cref="M:Microsoft.Practices.Unity.UnityContainer.RegisterInstance(System.Type,System.String,System.Object,Microsoft.Practices.Unity.LifetimeManager)"/> method,
5222 or one of its overloads, is called.
5223 </summary>
5224 </member>
5225 <member name="T:Microsoft.Practices.Unity.UnityContainerExtensions">
5226 <summary>
5227 Extension class that adds a set of convenience overloads to the
5228 <see cref="T:Microsoft.Practices.Unity.IUnityContainer"/> interface.
5229 </summary>
5230 </member>
5231 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterType``1(Microsoft.Practices.Unity.IUnityContainer,Microsoft.Practices.Unity.InjectionMember[])">
5232 <summary>
5233 Register a type with specific members to be injected.
5234 </summary>
5235 <typeparam name="T">Type this registration is for.</typeparam>
5236 <param name="container">Container to configure.</param>
5237 <param name="injectionMembers">Injection configuration objects.</param>
5238 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5239 </member>
5240 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterType``2(Microsoft.Practices.Unity.IUnityContainer,Microsoft.Practices.Unity.InjectionMember[])">
5241 <summary>
5242 Register a type mapping with the container.
5243 </summary>
5244 <remarks>
5245 <para>
5246 This method is used to tell the container that when asked for type <typeparamref name="TFrom"/>,
5247 actually return an instance of type <typeparamref name="TTo"/>. This is very useful for
5248 getting instances of interfaces.
5249 </para>
5250 <para>
5251 This overload registers a default mapping and transient lifetime.
5252 </para>
5253 </remarks>
5254 <typeparam name="TFrom"><see cref="T:System.Type"/> that will be requested.</typeparam>
5255 <typeparam name="TTo"><see cref="T:System.Type"/> that will actually be returned.</typeparam>
5256 <param name="container">Container to configure.</param>
5257 <param name="injectionMembers">Injection configuration objects.</param>
5258 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5259 </member>
5260 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterType``2(Microsoft.Practices.Unity.IUnityContainer,Microsoft.Practices.Unity.LifetimeManager,Microsoft.Practices.Unity.InjectionMember[])">
5261 <summary>
5262 Register a type mapping with the container, where the created instances will use
5263 the given <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/>.
5264 </summary>
5265 <typeparam name="TFrom"><see cref="T:System.Type"/> that will be requested.</typeparam>
5266 <typeparam name="TTo"><see cref="T:System.Type"/> that will actually be returned.</typeparam>
5267 <param name="container">Container to configure.</param>
5268 <param name="lifetimeManager">The <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> that controls the lifetime
5269 of the returned instance.</param>
5270 <param name="injectionMembers">Injection configuration objects.</param>
5271 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5272 </member>
5273 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterType``2(Microsoft.Practices.Unity.IUnityContainer,System.String,Microsoft.Practices.Unity.InjectionMember[])">
5274 <summary>
5275 Register a type mapping with the container.
5276 </summary>
5277 <remarks>
5278 This method is used to tell the container that when asked for type <typeparamref name="TFrom"/>,
5279 actually return an instance of type <typeparamref name="TTo"/>. This is very useful for
5280 getting instances of interfaces.
5281 </remarks>
5282 <typeparam name="TFrom"><see cref="T:System.Type"/> that will be requested.</typeparam>
5283 <typeparam name="TTo"><see cref="T:System.Type"/> that will actually be returned.</typeparam>
5284 <param name="container">Container to configure.</param>
5285 <param name="name">Name of this mapping.</param>
5286 <param name="injectionMembers">Injection configuration objects.</param>
5287 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5288 </member>
5289 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterType``2(Microsoft.Practices.Unity.IUnityContainer,System.String,Microsoft.Practices.Unity.LifetimeManager,Microsoft.Practices.Unity.InjectionMember[])">
5290 <summary>
5291 Register a type mapping with the container, where the created instances will use
5292 the given <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/>.
5293 </summary>
5294 <typeparam name="TFrom"><see cref="T:System.Type"/> that will be requested.</typeparam>
5295 <typeparam name="TTo"><see cref="T:System.Type"/> that will actually be returned.</typeparam>
5296 <param name="container">Container to configure.</param>
5297 <param name="name">Name to use for registration, null if a default registration.</param>
5298 <param name="lifetimeManager">The <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> that controls the lifetime
5299 of the returned instance.</param>
5300 <param name="injectionMembers">Injection configuration objects.</param>
5301 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5302 </member>
5303 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterType``1(Microsoft.Practices.Unity.IUnityContainer,Microsoft.Practices.Unity.LifetimeManager,Microsoft.Practices.Unity.InjectionMember[])">
5304 <summary>
5305 Register a <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> for the given type with the container.
5306 No type mapping is performed for this type.
5307 </summary>
5308 <typeparam name="T">The type to apply the <paramref name="lifetimeManager"/> to.</typeparam>
5309 <param name="container">Container to configure.</param>
5310 <param name="lifetimeManager">The <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> that controls the lifetime
5311 of the returned instance.</param>
5312 <param name="injectionMembers">Injection configuration objects.</param>
5313 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5314 </member>
5315 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterType``1(Microsoft.Practices.Unity.IUnityContainer,System.String,Microsoft.Practices.Unity.InjectionMember[])">
5316 <summary>
5317 Register a <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> for the given type with the container.
5318 No type mapping is performed for this type.
5319 </summary>
5320 <typeparam name="T">The type to configure injection on.</typeparam>
5321 <param name="container">Container to configure.</param>
5322 <param name="name">Name that will be used to request the type.</param>
5323 <param name="injectionMembers">Injection configuration objects.</param>
5324 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5325 </member>
5326 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterType``1(Microsoft.Practices.Unity.IUnityContainer,System.String,Microsoft.Practices.Unity.LifetimeManager,Microsoft.Practices.Unity.InjectionMember[])">
5327 <summary>
5328 Register a <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> for the given type and name with the container.
5329 No type mapping is performed for this type.
5330 </summary>
5331 <typeparam name="T">The type to apply the <paramref name="lifetimeManager"/> to.</typeparam>
5332 <param name="container">Container to configure.</param>
5333 <param name="name">Name that will be used to request the type.</param>
5334 <param name="lifetimeManager">The <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> that controls the lifetime
5335 of the returned instance.</param>
5336 <param name="injectionMembers">Injection configuration objects.</param>
5337 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5338 </member>
5339 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterType(Microsoft.Practices.Unity.IUnityContainer,System.Type,Microsoft.Practices.Unity.InjectionMember[])">
5340 <summary>
5341 Register a type with specific members to be injected.
5342 </summary>
5343 <param name="container">Container to configure.</param>
5344 <param name="t">Type this registration is for.</param>
5345 <param name="injectionMembers">Injection configuration objects.</param>
5346 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5347 </member>
5348 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterType(Microsoft.Practices.Unity.IUnityContainer,System.Type,System.Type,Microsoft.Practices.Unity.InjectionMember[])">
5349 <summary>
5350 Register a type mapping with the container.
5351 </summary>
5352 <remarks>
5353 <para>
5354 This method is used to tell the container that when asked for type <paramref name="from"/>,
5355 actually return an instance of type <paramref name="to"/>. This is very useful for
5356 getting instances of interfaces.
5357 </para>
5358 <para>
5359 This overload registers a default mapping.
5360 </para>
5361 </remarks>
5362 <param name="container">Container to configure.</param>
5363 <param name="from"><see cref="T:System.Type"/> that will be requested.</param>
5364 <param name="to"><see cref="T:System.Type"/> that will actually be returned.</param>
5365 <param name="injectionMembers">Injection configuration objects.</param>
5366 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5367 </member>
5368 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterType(Microsoft.Practices.Unity.IUnityContainer,System.Type,System.Type,System.String,Microsoft.Practices.Unity.InjectionMember[])">
5369 <summary>
5370 Register a type mapping with the container.
5371 </summary>
5372 <remarks>
5373 This method is used to tell the container that when asked for type <paramref name="from"/>,
5374 actually return an instance of type <paramref name="to"/>. This is very useful for
5375 getting instances of interfaces.
5376 </remarks>
5377 <param name="container">Container to configure.</param>
5378 <param name="from"><see cref="T:System.Type"/> that will be requested.</param>
5379 <param name="to"><see cref="T:System.Type"/> that will actually be returned.</param>
5380 <param name="name">Name to use for registration, null if a default registration.</param>
5381 <param name="injectionMembers">Injection configuration objects.</param>
5382 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5383 </member>
5384 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterType(Microsoft.Practices.Unity.IUnityContainer,System.Type,System.Type,Microsoft.Practices.Unity.LifetimeManager,Microsoft.Practices.Unity.InjectionMember[])">
5385 <summary>
5386 Register a type mapping with the container, where the created instances will use
5387 the given <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/>.
5388 </summary>
5389 <param name="container">Container to configure.</param>
5390 <param name="from"><see cref="T:System.Type"/> that will be requested.</param>
5391 <param name="to"><see cref="T:System.Type"/> that will actually be returned.</param>
5392 <param name="lifetimeManager">The <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> that controls the lifetime
5393 of the returned instance.</param>
5394 <param name="injectionMembers">Injection configuration objects.</param>
5395 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5396 </member>
5397 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterType(Microsoft.Practices.Unity.IUnityContainer,System.Type,Microsoft.Practices.Unity.LifetimeManager,Microsoft.Practices.Unity.InjectionMember[])">
5398 <summary>
5399 Register a <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> for the given type and name with the container.
5400 No type mapping is performed for this type.
5401 </summary>
5402 <param name="container">Container to configure.</param>
5403 <param name="t">The <see cref="T:System.Type"/> to apply the <paramref name="lifetimeManager"/> to.</param>
5404 <param name="lifetimeManager">The <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> that controls the lifetime
5405 of the returned instance.</param>
5406 <param name="injectionMembers">Injection configuration objects.</param>
5407 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5408 </member>
5409 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterType(Microsoft.Practices.Unity.IUnityContainer,System.Type,System.String,Microsoft.Practices.Unity.InjectionMember[])">
5410 <summary>
5411 Register a <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> for the given type and name with the container.
5412 No type mapping is performed for this type.
5413 </summary>
5414 <param name="container">Container to configure.</param>
5415 <param name="t">The <see cref="T:System.Type"/> to configure in the container.</param>
5416 <param name="name">Name to use for registration, null if a default registration.</param>
5417 <param name="injectionMembers">Injection configuration objects.</param>
5418 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5419 </member>
5420 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterType(Microsoft.Practices.Unity.IUnityContainer,System.Type,System.String,Microsoft.Practices.Unity.LifetimeManager,Microsoft.Practices.Unity.InjectionMember[])">
5421 <summary>
5422 Register a <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> for the given type and name with the container.
5423 No type mapping is performed for this type.
5424 </summary>
5425 <param name="container">Container to configure.</param>
5426 <param name="t">The <see cref="T:System.Type"/> to apply the <paramref name="lifetimeManager"/> to.</param>
5427 <param name="name">Name to use for registration, null if a default registration.</param>
5428 <param name="lifetimeManager">The <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> that controls the lifetime
5429 of the returned instance.</param>
5430 <param name="injectionMembers">Injection configuration objects.</param>
5431 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5432 </member>
5433 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterInstance``1(Microsoft.Practices.Unity.IUnityContainer,``0)">
5434 <summary>
5435 Register an instance with the container.
5436 </summary>
5437 <remarks>
5438 <para>
5439 Instance registration is much like setting a type as a singleton, except that instead
5440 of the container creating the instance the first time it is requested, the user
5441 creates the instance ahead of type and adds that instance to the container.
5442 </para>
5443 <para>
5444 This overload does a default registration and has the container take over the lifetime of the instance.</para>
5445 </remarks>
5446 <typeparam name="TInterface">Type of instance to register (may be an implemented interface instead of the full type).</typeparam>
5447 <param name="container">Container to configure.</param>
5448 <param name="instance">Object to returned.</param>
5449 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5450 </member>
5451 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterInstance``1(Microsoft.Practices.Unity.IUnityContainer,``0,Microsoft.Practices.Unity.LifetimeManager)">
5452 <summary>
5453 Register an instance with the container.
5454 </summary>
5455 <remarks>
5456 <para>
5457 Instance registration is much like setting a type as a singleton, except that instead
5458 of the container creating the instance the first time it is requested, the user
5459 creates the instance ahead of type and adds that instance to the container.
5460 </para>
5461 <para>
5462 This overload does a default registration (name = null).
5463 </para>
5464 </remarks>
5465 <typeparam name="TInterface">Type of instance to register (may be an implemented interface instead of the full type).</typeparam>
5466 <param name="container">Container to configure.</param>
5467 <param name="instance">Object to returned.</param>
5468 <param name="lifetimeManager">
5469 <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> object that controls how this instance will be managed by the container.</param>
5470 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5471 </member>
5472 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterInstance``1(Microsoft.Practices.Unity.IUnityContainer,System.String,``0)">
5473 <summary>
5474 Register an instance with the container.
5475 </summary>
5476 <remarks>
5477 <para>
5478 Instance registration is much like setting a type as a singleton, except that instead
5479 of the container creating the instance the first time it is requested, the user
5480 creates the instance ahead of type and adds that instance to the container.
5481 </para>
5482 <para>
5483 This overload automatically has the container take ownership of the <paramref name="instance"/>.</para>
5484 </remarks>
5485 <typeparam name="TInterface">Type of instance to register (may be an implemented interface instead of the full type).</typeparam>
5486 <param name="instance">Object to returned.</param>
5487 <param name="container">Container to configure.</param>
5488 <param name="name">Name for registration.</param>
5489 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5490 </member>
5491 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterInstance``1(Microsoft.Practices.Unity.IUnityContainer,System.String,``0,Microsoft.Practices.Unity.LifetimeManager)">
5492 <summary>
5493 Register an instance with the container.
5494 </summary>
5495 <remarks>
5496 <para>
5497 Instance registration is much like setting a type as a singleton, except that instead
5498 of the container creating the instance the first time it is requested, the user
5499 creates the instance ahead of type and adds that instance to the container.
5500 </para>
5501 </remarks>
5502 <typeparam name="TInterface">Type of instance to register (may be an implemented interface instead of the full type).</typeparam>
5503 <param name="instance">Object to returned.</param>
5504 <param name="container">Container to configure.</param>
5505 <param name="name">Name for registration.</param>
5506 <param name="lifetimeManager">
5507 <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> object that controls how this instance will be managed by the container.</param>
5508 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5509 </member>
5510 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterInstance(Microsoft.Practices.Unity.IUnityContainer,System.Type,System.Object)">
5511 <summary>
5512 Register an instance with the container.
5513 </summary>
5514 <remarks>
5515 <para>
5516 Instance registration is much like setting a type as a singleton, except that instead
5517 of the container creating the instance the first time it is requested, the user
5518 creates the instance ahead of type and adds that instance to the container.
5519 </para>
5520 <para>
5521 This overload does a default registration and has the container take over the lifetime of the instance.</para>
5522 </remarks>
5523 <param name="container">Container to configure.</param>
5524 <param name="t">Type of instance to register (may be an implemented interface instead of the full type).</param>
5525 <param name="instance">Object to returned.</param>
5526 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5527 </member>
5528 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterInstance(Microsoft.Practices.Unity.IUnityContainer,System.Type,System.Object,Microsoft.Practices.Unity.LifetimeManager)">
5529 <summary>
5530 Register an instance with the container.
5531 </summary>
5532 <remarks>
5533 <para>
5534 Instance registration is much like setting a type as a singleton, except that instead
5535 of the container creating the instance the first time it is requested, the user
5536 creates the instance ahead of type and adds that instance to the container.
5537 </para>
5538 <para>
5539 This overload does a default registration (name = null).
5540 </para>
5541 </remarks>
5542 <param name="container">Container to configure.</param>
5543 <param name="t">Type of instance to register (may be an implemented interface instead of the full type).</param>
5544 <param name="instance">Object to returned.</param>
5545 <param name="lifetimeManager">
5546 <see cref="T:Microsoft.Practices.Unity.LifetimeManager"/> object that controls how this instance will be managed by the container.</param>
5547 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5548 </member>
5549 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.RegisterInstance(Microsoft.Practices.Unity.IUnityContainer,System.Type,System.String,System.Object)">
5550 <summary>
5551 Register an instance with the container.
5552 </summary>
5553 <remarks>
5554 <para>
5555 Instance registration is much like setting a type as a singleton, except that instead
5556 of the container creating the instance the first time it is requested, the user
5557 creates the instance ahead of type and adds that instance to the container.
5558 </para>
5559 <para>
5560 This overload automatically has the container take ownership of the <paramref name="instance"/>.</para>
5561 </remarks>
5562 <param name="container">Container to configure.</param>
5563 <param name="t">Type of instance to register (may be an implemented interface instead of the full type).</param>
5564 <param name="instance">Object to returned.</param>
5565 <param name="name">Name for registration.</param>
5566 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5567 </member>
5568 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.Resolve``1(Microsoft.Practices.Unity.IUnityContainer,Microsoft.Practices.Unity.ResolverOverride[])">
5569 <summary>
5570 Resolve an instance of the default requested type from the container.
5571 </summary>
5572 <typeparam name="T"><see cref="T:System.Type"/> of object to get from the container.</typeparam>
5573 <param name="container">Container to resolve from.</param>
5574 <param name="overrides">Any overrides for the resolve call.</param>
5575 <returns>The retrieved object.</returns>
5576 </member>
5577 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.Resolve``1(Microsoft.Practices.Unity.IUnityContainer,System.String,Microsoft.Practices.Unity.ResolverOverride[])">
5578 <summary>
5579 Resolve an instance of the requested type with the given name from the container.
5580 </summary>
5581 <typeparam name="T"><see cref="T:System.Type"/> of object to get from the container.</typeparam>
5582 <param name="container">Container to resolve from.</param>
5583 <param name="name">Name of the object to retrieve.</param>
5584 <param name="overrides">Any overrides for the resolve call.</param>
5585 <returns>The retrieved object.</returns>
5586 </member>
5587 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.Resolve(Microsoft.Practices.Unity.IUnityContainer,System.Type,Microsoft.Practices.Unity.ResolverOverride[])">
5588 <summary>
5589 Resolve an instance of the default requested type from the container.
5590 </summary>
5591 <param name="container">Container to resolve from.</param>
5592 <param name="t"><see cref="T:System.Type"/> of object to get from the container.</param>
5593 <param name="overrides">Any overrides for the resolve call.</param>
5594 <returns>The retrieved object.</returns>
5595 </member>
5596 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.ResolveAll``1(Microsoft.Practices.Unity.IUnityContainer,Microsoft.Practices.Unity.ResolverOverride[])">
5597 <summary>
5598 Return instances of all registered types requested.
5599 </summary>
5600 <remarks>
5601 <para>
5602 This method is useful if you've registered multiple types with the same
5603 <see cref="T:System.Type"/> but different names.
5604 </para>
5605 <para>
5606 Be aware that this method does NOT return an instance for the default (unnamed) registration.
5607 </para>
5608 </remarks>
5609 <typeparam name="T">The type requested.</typeparam>
5610 <param name="container">Container to resolve from.</param>
5611 <param name="resolverOverrides">Any overrides for the resolve calls.</param>
5612 <returns>Set of objects of type <typeparamref name="T"/>.</returns>
5613 </member>
5614 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.BuildUp``1(Microsoft.Practices.Unity.IUnityContainer,``0,Microsoft.Practices.Unity.ResolverOverride[])">
5615 <summary>
5616 Run an existing object through the container and perform injection on it.
5617 </summary>
5618 <remarks>
5619 <para>
5620 This method is useful when you don't control the construction of an
5621 instance (ASP.NET pages or objects created via XAML, for instance)
5622 but you still want properties and other injection performed.
5623 </para>
5624 <para>
5625 This overload uses the default registrations.
5626 </para>
5627 </remarks>
5628 <typeparam name="T"><see cref="T:System.Type"/> of object to perform injection on.</typeparam>
5629 <param name="container">Container to resolve through.</param>
5630 <param name="existing">Instance to build up.</param>
5631 <param name="resolverOverrides">Any overrides for the buildup.</param>
5632 <returns>The resulting object. By default, this will be <paramref name="existing"/>, but
5633 container extensions may add things like automatic proxy creation which would
5634 cause this to return a different object (but still type compatible with <typeparamref name="T"/>).</returns>
5635 </member>
5636 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.BuildUp``1(Microsoft.Practices.Unity.IUnityContainer,``0,System.String,Microsoft.Practices.Unity.ResolverOverride[])">
5637 <summary>
5638 Run an existing object through the container and perform injection on it.
5639 </summary>
5640 <remarks>
5641 <para>
5642 This method is useful when you don't control the construction of an
5643 instance (ASP.NET pages or objects created via XAML, for instance)
5644 but you still want properties and other injection performed.
5645 </para></remarks>
5646 <typeparam name="T"><see cref="T:System.Type"/> of object to perform injection on.</typeparam>
5647 <param name="container">Conatiner to resolve through.</param>
5648 <param name="existing">Instance to build up.</param>
5649 <param name="name">name to use when looking up the typemappings and other configurations.</param>
5650 <param name="resolverOverrides">Any overrides for the Buildup.</param>
5651 <returns>The resulting object. By default, this will be <paramref name="existing"/>, but
5652 container extensions may add things like automatic proxy creation which would
5653 cause this to return a different object (but still type compatible with <typeparamref name="T"/>).</returns>
5654 </member>
5655 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.BuildUp(Microsoft.Practices.Unity.IUnityContainer,System.Type,System.Object,Microsoft.Practices.Unity.ResolverOverride[])">
5656 <summary>
5657 Run an existing object through the container and perform injection on it.
5658 </summary>
5659 <remarks>
5660 <para>
5661 This method is useful when you don't control the construction of an
5662 instance (ASP.NET pages or objects created via XAML, for instance)
5663 but you still want properties and other injection performed.
5664 </para>
5665 <para>
5666 This overload uses the default registrations.
5667 </para>
5668 </remarks>
5669 <param name="container">Container to resolve through.</param>
5670 <param name="t"><see cref="T:System.Type"/> of object to perform injection on.</param>
5671 <param name="existing">Instance to build up.</param>
5672 <param name="resolverOverrides">Any overrides for the Buildup.</param>
5673 <returns>The resulting object. By default, this will be <paramref name="existing"/>, but
5674 container extensions may add things like automatic proxy creation which would
5675 cause this to return a different object (but still type compatible with <paramref name="t"/>).</returns>
5676 </member>
5677 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.AddNewExtension``1(Microsoft.Practices.Unity.IUnityContainer)">
5678 <summary>
5679 Creates a new extension object and adds it to the container.
5680 </summary>
5681 <typeparam name="TExtension">Type of <see cref="T:Microsoft.Practices.Unity.UnityContainerExtension"/> to add. The extension type
5682 will be resolved from within the supplied <paramref name="container"/>.</typeparam>
5683 <param name="container">Container to add the extension to.</param>
5684 <returns>The <see cref="T:Microsoft.Practices.Unity.UnityContainer"/> object that this method was called on (this in C#, Me in Visual Basic).</returns>
5685 </member>
5686 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.Configure``1(Microsoft.Practices.Unity.IUnityContainer)">
5687 <summary>
5688 Resolve access to a configuration interface exposed by an extension.
5689 </summary>
5690 <remarks>Extensions can expose configuration interfaces as well as adding
5691 strategies and policies to the container. This method walks the list of
5692 added extensions and returns the first one that implements the requested type.
5693 </remarks>
5694 <typeparam name="TConfigurator">The configuration interface required.</typeparam>
5695 <param name="container">Container to configure.</param>
5696 <returns>The requested extension's configuration interface, or null if not found.</returns>
5697 </member>
5698 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.IsRegistered(Microsoft.Practices.Unity.IUnityContainer,System.Type)">
5699 <summary>
5700 Check if a particular type has been registered with the container with
5701 the default name.
5702 </summary>
5703 <param name="container">Container to inspect.</param>
5704 <param name="typeToCheck">Type to check registration for.</param>
5705 <returns>True if this type has been registered, false if not.</returns>
5706 </member>
5707 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.IsRegistered(Microsoft.Practices.Unity.IUnityContainer,System.Type,System.String)">
5708 <summary>
5709 Check if a particular type/name pair has been registered with the container.
5710 </summary>
5711 <param name="container">Container to inspect.</param>
5712 <param name="typeToCheck">Type to check registration for.</param>
5713 <param name="nameToCheck">Name to check registration for.</param>
5714 <returns>True if this type/name pair has been registered, false if not.</returns>
5715 </member>
5716 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.IsRegistered``1(Microsoft.Practices.Unity.IUnityContainer)">
5717 <summary>
5718 Check if a particular type has been registered with the container with the default name.
5719 </summary>
5720 <typeparam name="T">Type to check registration for.</typeparam>
5721 <param name="container">Container to inspect.</param>
5722 <returns>True if this type has been registered, false if not.</returns>
5723 </member>
5724 <member name="M:Microsoft.Practices.Unity.UnityContainerExtensions.IsRegistered``1(Microsoft.Practices.Unity.IUnityContainer,System.String)">
5725 <summary>
5726 Check if a particular type/name pair has been registered with the container.
5727 </summary>
5728 <typeparam name="T">Type to check registration for.</typeparam>
5729 <param name="container">Container to inspect.</param>
5730 <param name="nameToCheck">Name to check registration for.</param>
5731 <returns>True if this type/name pair has been registered, false if not.</returns>
5732 </member>
5733 <member name="T:Microsoft.Practices.Unity.UnityDefaultBehaviorExtension">
5734 <summary>
5735 This extension supplies the default behavior of the UnityContainer API
5736 by handling the context events and setting policies.
5737 </summary>
5738 </member>
5739 <member name="M:Microsoft.Practices.Unity.UnityDefaultBehaviorExtension.Initialize">
5740 <summary>
5741 Install the default container behavior into the container.
5742 </summary>
5743 </member>
5744 <member name="M:Microsoft.Practices.Unity.UnityDefaultBehaviorExtension.Remove">
5745 <summary>
5746 Remove the default behavior from the container.
5747 </summary>
5748 </member>
5749 <member name="T:Microsoft.Practices.Unity.UnityDefaultStrategiesExtension">
5750 <summary>
5751 This extension installs the default strategies and policies into the container
5752 to implement the standard behavior of the Unity container.
5753 </summary>
5754 </member>
5755 <member name="M:Microsoft.Practices.Unity.UnityDefaultStrategiesExtension.Initialize">
5756 <summary>
5757 Add the default ObjectBuilder strategies &amp; policies to the container.
5758 </summary>
5759 </member>
5760 <member name="T:Microsoft.Practices.Unity.Utility.Guard">
5761 <summary>
5762 A static helper class that includes various parameter checking routines.
5763 </summary>
5764 </member>
5765 <member name="M:Microsoft.Practices.Unity.Utility.Guard.ArgumentNotNull(System.Object,System.String)">
5766 <summary>
5767 Throws <see cref="T:System.ArgumentNullException"/> if the given argument is null.
5768 </summary>
5769 <exception cref="T:System.ArgumentNullException"> if tested value if null.</exception>
5770 <param name="argumentValue">Argument value to test.</param>
5771 <param name="argumentName">Name of the argument being tested.</param>
5772 </member>
5773 <member name="M:Microsoft.Practices.Unity.Utility.Guard.ArgumentNotNullOrEmpty(System.String,System.String)">
5774 <summary>
5775 Throws an exception if the tested string argument is null or the empty string.
5776 </summary>
5777 <exception cref="T:System.ArgumentNullException">Thrown if string value is null.</exception>
5778 <exception cref="T:System.ArgumentException">Thrown if the string is empty</exception>
5779 <param name="argumentValue">Argument value to check.</param>
5780 <param name="argumentName">Name of argument being checked.</param>
5781 </member>
5782 <member name="M:Microsoft.Practices.Unity.Utility.Guard.TypeIsAssignable(System.Type,System.Type,System.String)">
5783 <summary>
5784 Verifies that an argument type is assignable from the provided type (meaning
5785 interfaces are implemented, or classes exist in the base class hierarchy).
5786 </summary>
5787 <param name="assignmentTargetType">The argument type that will be assigned to.</param>
5788 <param name="assignmentValueType">The type of the value being assigned.</param>
5789 <param name="argumentName">Argument name.</param>
5790 </member>
5791 <member name="M:Microsoft.Practices.Unity.Utility.Guard.InstanceIsAssignable(System.Type,System.Object,System.String)">
5792 <summary>
5793 Verifies that an argument instance is assignable from the provided type (meaning
5794 interfaces are implemented, or classes exist in the base class hierarchy, or instance can be
5795 assigned through a runtime wrapper, as is the case for COM Objects).
5796 </summary>
5797 <param name="assignmentTargetType">The argument type that will be assigned to.</param>
5798 <param name="assignmentInstance">The instance that will be assigned.</param>
5799 <param name="argumentName">Argument name.</param>
5800 </member>
5801 <member name="T:Microsoft.Practices.Unity.Utility.MethodReflectionHelper">
5802 <summary>
5803 Helper class to wrap common reflection stuff dealing with
5804 methods.
5805 </summary>
5806 </member>
5807 <member name="M:Microsoft.Practices.Unity.Utility.MethodReflectionHelper.#ctor(System.Reflection.MethodBase)">
5808 <summary>
5809 Create a new <see cref="T:Microsoft.Practices.Unity.Utility.MethodReflectionHelper"/> instance that
5810 lets us do more reflection stuff on that method.
5811 </summary>
5812 <param name="method">The method to reflect on.</param>
5813 </member>
5814 <member name="M:Microsoft.Practices.Unity.Utility.MethodReflectionHelper.GetClosedParameterTypes(System.Type[])">
5815 <summary>
5816 Given our set of generic type arguments,
5817 </summary>
5818 <param name="genericTypeArguments">The generic type arguments.</param>
5819 <returns>An array with closed parameter types. </returns>
5820 </member>
5821 <member name="P:Microsoft.Practices.Unity.Utility.MethodReflectionHelper.MethodHasOpenGenericParameters">
5822 <summary>
5823 Returns true if any of the parameters of this method
5824 are open generics.
5825 </summary>
5826 </member>
5827 <member name="P:Microsoft.Practices.Unity.Utility.MethodReflectionHelper.ParameterTypes">
5828 <summary>
5829 Return the <see cref="T:System.Type"/> of each parameter for this
5830 method.
5831 </summary>
5832 <returns>Sequence of <see cref="T:System.Type"/> objects, one for
5833 each parameter in order.</returns>
5834 </member>
5835 <member name="T:Microsoft.Practices.Unity.Utility.Pair`2">
5836 <summary>
5837 A helper class that encapsulates two different
5838 data items together into a a single item.
5839 </summary>
5840 </member>
5841 <member name="M:Microsoft.Practices.Unity.Utility.Pair`2.#ctor(`0,`1)">
5842 <summary>
5843 Create a new <see cref="T:Microsoft.Practices.Unity.Utility.Pair`2"/> containing
5844 the two values give.
5845 </summary>
5846 <param name="first">First value</param>
5847 <param name="second">Second value</param>
5848 </member>
5849 <member name="P:Microsoft.Practices.Unity.Utility.Pair`2.First">
5850 <summary>
5851 The first value of the pair.
5852 </summary>
5853 </member>
5854 <member name="P:Microsoft.Practices.Unity.Utility.Pair`2.Second">
5855 <summary>
5856 The second value of the pair.
5857 </summary>
5858 </member>
5859 <member name="T:Microsoft.Practices.Unity.Utility.Pair">
5860 <summary>
5861 Container for a Pair helper method.
5862 </summary>
5863 </member>
5864 <member name="M:Microsoft.Practices.Unity.Utility.Pair.Make``2(``0,``1)">
5865 <summary>
5866 A helper factory method that lets users take advantage of type inference.
5867 </summary>
5868 <typeparam name="TFirstParameter">Type of first value.</typeparam>
5869 <typeparam name="TSecondParameter">Type of second value.</typeparam>
5870 <param name="first">First value.</param>
5871 <param name="second">Second value.</param>
5872 <returns>A new <see cref="T:Microsoft.Practices.Unity.Utility.Pair`2"/> instance.</returns>
5873 </member>
5874 <member name="T:Microsoft.Practices.Unity.Utility.ParameterMatcher">
5875 <summary>
5876 A utility class that handles the logic of matching parameter
5877 lists, so we can find the right constructor and method overloads.
5878 </summary>
5879 </member>
5880 <member name="M:Microsoft.Practices.Unity.Utility.ParameterMatcher.#ctor(System.Collections.Generic.IEnumerable{Microsoft.Practices.Unity.InjectionParameterValue})">
5881 <summary>
5882 Create a new <see cref="T:Microsoft.Practices.Unity.Utility.ParameterMatcher"/> that will attempt to
5883 match the given parameter types.
5884 </summary>
5885 <param name="parametersToMatch">Target parameters to match against.</param>
5886 </member>
5887 <member name="M:Microsoft.Practices.Unity.Utility.ParameterMatcher.Matches(System.Collections.Generic.IEnumerable{System.Type})">
5888 <summary>
5889 Tests to see if the given set of types matches the ones
5890 we're looking for.
5891 </summary>
5892 <param name="candidate">parameter list to look for.</param>
5893 <returns>true if they match, false if they don't.</returns>
5894 </member>
5895 <member name="M:Microsoft.Practices.Unity.Utility.ParameterMatcher.Matches(System.Collections.Generic.IEnumerable{System.Reflection.ParameterInfo})">
5896 <summary>
5897 Tests to see if the given set of types matches the ones we're looking for.
5898 </summary>
5899 <param name="candidate">Candidate method signature to look for.</param>
5900 <returns>True if they match, false if they don't.</returns>
5901 </member>
5902 <member name="T:Microsoft.Practices.Unity.Utility.ParameterReflectionHelper">
5903 <summary>
5904 Another reflection helper class that has extra methods
5905 for dealing with ParameterInfos.
5906 </summary>
5907 </member>
5908 <member name="T:Microsoft.Practices.Unity.Utility.ReflectionHelper">
5909 <summary>
5910 A small helper class to encapsulate details of the
5911 reflection API, particularly around generics.
5912 </summary>
5913 </member>
5914 <member name="M:Microsoft.Practices.Unity.Utility.ReflectionHelper.#ctor(System.Type)">
5915 <summary>
5916 Create a new <see cref="T:Microsoft.Practices.Unity.Utility.ReflectionHelper"/> instance that
5917 lets you look at information about the given type.
5918 </summary>
5919 <param name="typeToReflect">Type to do reflection on.</param>
5920 </member>
5921 <member name="M:Microsoft.Practices.Unity.Utility.ReflectionHelper.MethodHasOpenGenericParameters(System.Reflection.MethodBase)">
5922 <summary>
5923 Test the given <see cref="T:System.Reflection.MethodBase"/> object, looking at
5924 the parameters. Determine if any of the parameters are
5925 open generic types that need type attributes filled in.
5926 </summary>
5927 <param name="method">The method to check.</param>
5928 <returns>True if any of the parameters are open generics. False if not.</returns>
5929 </member>
5930 <member name="M:Microsoft.Practices.Unity.Utility.ReflectionHelper.GetClosedParameterType(System.Type[])">
5931 <summary>
5932 If this type is an open generic, use the
5933 given <paramref name="genericArguments"/> array to
5934 determine what the required closed type is and return that.
5935 </summary>
5936 <remarks>If the parameter is not an open type, just
5937 return this parameter's type.</remarks>
5938 <param name="genericArguments">Type arguments to substitute in for
5939 the open type parameters.</param>
5940 <returns>Corresponding closed type of this parameter.</returns>
5941 </member>
5942 <member name="M:Microsoft.Practices.Unity.Utility.ReflectionHelper.GetNamedGenericParameter(System.String)">
5943 <summary>
5944 Given a generic argument name, return the corresponding type for this
5945 closed type. For example, if the current type is SomeType&lt;User&gt;, and the
5946 corresponding definition was SomeType&lt;TSomething&gt;, calling this method
5947 and passing "TSomething" will return typeof(User).
5948 </summary>
5949 <param name="parameterName">Name of the generic parameter.</param>
5950 <returns>Type of the corresponding generic parameter, or null if there
5951 is no matching name.</returns>
5952 </member>
5953 <member name="P:Microsoft.Practices.Unity.Utility.ReflectionHelper.Type">
5954 <summary>
5955 The <see cref="P:Microsoft.Practices.Unity.Utility.ReflectionHelper.Type"/> object we're reflecting over.
5956 </summary>
5957 </member>
5958 <member name="P:Microsoft.Practices.Unity.Utility.ReflectionHelper.IsGenericType">
5959 <summary>
5960 Is this type generic?
5961 </summary>
5962 </member>
5963 <member name="P:Microsoft.Practices.Unity.Utility.ReflectionHelper.IsOpenGeneric">
5964 <summary>
5965 Is this type an open generic (no type parameter specified)
5966 </summary>
5967 </member>
5968 <member name="P:Microsoft.Practices.Unity.Utility.ReflectionHelper.IsArray">
5969 <summary>
5970 Is this type an array type?
5971 </summary>
5972 </member>
5973 <member name="P:Microsoft.Practices.Unity.Utility.ReflectionHelper.IsGenericArray">
5974 <summary>
5975 Is this type an array of generic elements?
5976 </summary>
5977 </member>
5978 <member name="P:Microsoft.Practices.Unity.Utility.ReflectionHelper.ArrayElementType">
5979 <summary>
5980 The type of the elements in this type (if it's an array).
5981 </summary>
5982 </member>
5983 <member name="P:Microsoft.Practices.Unity.Utility.ReflectionHelper.InstanceConstructors">
5984 <summary>
5985 Returns all the public constructors defined for the current reflected <see cref="P:Microsoft.Practices.Unity.Utility.ReflectionHelper.Type"/>.
5986 </summary>
5987 <value>
5988 An enumeration of <see cref="T:System.Reflection.ConstructorInfo"/> ConstructorInfo objects representing all the public instance constructors defined for the
5989 current reflected <see cref="P:Microsoft.Practices.Unity.Utility.ReflectionHelper.Type"/>, but not including the type initializer (static constructor).
5990 </value>
5991 </member>
5992 <member name="M:Microsoft.Practices.Unity.Utility.ParameterReflectionHelper.#ctor(System.Reflection.ParameterInfo)">
5993 <summary>
5994 Create a new instance of <see cref="T:Microsoft.Practices.Unity.Utility.ParameterReflectionHelper"/> that
5995 lets you query information about the given ParameterInfo object.
5996 </summary>
5997 <param name="parameter">Parameter to query.</param>
5998 </member>
5999 <member name="T:Microsoft.Practices.Unity.Utility.StaticReflection">
6000 <summary>
6001 A set of helper methods to pick through lambdas and pull out
6002 <see cref="T:System.Reflection.MethodInfo"/> from them.
6003 </summary>
6004 </member>
6005 <member name="M:Microsoft.Practices.Unity.Utility.StaticReflection.GetMethodInfo(System.Linq.Expressions.Expression{System.Action})">
6006 <summary>
6007 Pull out a <see cref="T:System.Reflection.MethodInfo"/> object from an expression of the form
6008 () =&gt; SomeClass.SomeMethod()
6009 </summary>
6010 <param name="expression">Expression describing the method to call.</param>
6011 <returns>Corresponding <see cref="T:System.Reflection.MethodInfo"/>.</returns>
6012 </member>
6013 <member name="M:Microsoft.Practices.Unity.Utility.StaticReflection.GetMethodInfo``1(System.Linq.Expressions.Expression{System.Action{``0}})">
6014 <summary>
6015 Pull out a <see cref="T:System.Reflection.MethodInfo"/> object from an expression of the form
6016 x =&gt; x.SomeMethod()
6017 </summary>
6018 <typeparam name="T">The type where the method is defined.</typeparam>
6019 <param name="expression">Expression describing the method to call.</param>
6020 <returns>Corresponding <see cref="T:System.Reflection.MethodInfo"/>.</returns>
6021 </member>
6022 <member name="M:Microsoft.Practices.Unity.Utility.StaticReflection.GetPropertyGetMethodInfo``2(System.Linq.Expressions.Expression{System.Func{``0,``1}})">
6023 <summary>
6024 Pull out a <see cref="T:System.Reflection.MethodInfo"/> object for the get method from an expression of the form
6025 x =&gt; x.SomeProperty
6026 </summary>
6027 <typeparam name="T">The type where the method is defined.</typeparam>
6028 <typeparam name="TProperty">The type for the property.</typeparam>
6029 <param name="expression">Expression describing the property for which the get method is to be extracted.</param>
6030 <returns>Corresponding <see cref="T:System.Reflection.MethodInfo"/>.</returns>
6031 </member>
6032 <member name="M:Microsoft.Practices.Unity.Utility.StaticReflection.GetPropertySetMethodInfo``2(System.Linq.Expressions.Expression{System.Func{``0,``1}})">
6033 <summary>
6034 Pull out a <see cref="T:System.Reflection.MethodInfo"/> object for the set method from an expression of the form
6035 x =&gt; x.SomeProperty
6036 </summary>
6037 <typeparam name="T">The type where the method is defined.</typeparam>
6038 <typeparam name="TProperty">The type for the property.</typeparam>
6039 <param name="expression">Expression describing the property for which the set method is to be extracted.</param>
6040 <returns>Corresponding <see cref="T:System.Reflection.MethodInfo"/>.</returns>
6041 </member>
6042 <member name="M:Microsoft.Practices.Unity.Utility.StaticReflection.GetMemberInfo``2(System.Linq.Expressions.Expression{System.Func{``0,``1}})">
6043 <summary>
6044
6045 </summary>
6046 <typeparam name="T"></typeparam>
6047 <typeparam name="TProperty"></typeparam>
6048 <param name="expression"></param>
6049 <returns></returns>
6050 </member>
6051 <member name="M:Microsoft.Practices.Unity.Utility.StaticReflection.GetConstructorInfo``1(System.Linq.Expressions.Expression{System.Func{``0}})">
6052 <summary>
6053 Pull out a <see cref="T:System.Reflection.ConstructorInfo"/> object from an expression of the form () =&gt; new SomeType()
6054 </summary>
6055 <typeparam name="T">The type where the constructor is defined.</typeparam>
6056 <param name="expression">Expression invoking the desired constructor.</param>
6057 <returns>Corresponding <see cref="T:System.Reflection.ConstructorInfo"/>.</returns>
6058 </member>
6059 </members>
6060 </doc>