main
   1<?xml version="1.0"?>
   2<doc>
   3    <assembly>
   4        <name>System.ComponentModel.Composition</name>
   5    </assembly>
   6    <members>
   7        <member name="M:Microsoft.Internal.GenerationServices.LoadValue(System.Reflection.Emit.ILGenerator,System.Object)">
   8            Generates the code that loads the supplied value on the stack
   9            This is not as simple as it seems, as different instructions need to be generated depending
  10            on its type.
  11            We support:
  12            1. All primitive types
  13            2. Strings
  14            3. Enums
  15            4. typeofs
  16            5. nulls
  17            6. Dictionaries of (string, object) recursively containing all of the above
  18            7. Enumerables
  19            8. Delegates on static functions or any of the above
  20            Everything else cannot be represented as literals
  21            <param name="ilGenerator"></param>
  22            <param name="item"></param>
  23            <param name="key"></param>
  24            <param name="value"></param>
  25            <returns></returns>
  26        </member>
  27        <member name="T:Microsoft.Internal.Strings">
  28            <summary>
  29              A strongly-typed resource class, for looking up localized strings, etc.
  30            </summary>
  31        </member>
  32        <member name="P:Microsoft.Internal.Strings.ResourceManager">
  33            <summary>
  34              Returns the cached ResourceManager instance used by this class.
  35            </summary>
  36        </member>
  37        <member name="P:Microsoft.Internal.Strings.Culture">
  38            <summary>
  39              Overrides the current thread's CurrentUICulture property for all
  40              resource lookups using this strongly typed resource class.
  41            </summary>
  42        </member>
  43        <member name="P:Microsoft.Internal.Strings.Adapter_CannotAdaptFromAndToSameContract">
  44            <summary>
  45              Looks up a localized string similar to The adapter &apos;{0}&apos; indicates that it adapts to and from the same contract; &apos;{1}&apos;. Adapter must adapt to and from different contracts..
  46            </summary>
  47        </member>
  48        <member name="P:Microsoft.Internal.Strings.Adapter_CannotAdaptNullOrEmptyFromOrToContract">
  49            <summary>
  50              Looks up a localized string similar to The adapter &apos;{0}&apos; provided an null, empty or malformed &apos;to&apos; and/or &apos;from&apos; contract. Adapters must specify both &apos;to&apos; and &apos;from&apos; contracts using a string or a type..
  51            </summary>
  52        </member>
  53        <member name="P:Microsoft.Internal.Strings.Adapter_ContractMismatch">
  54            <summary>
  55              Looks up a localized string similar to The adapter &apos;{0}&apos; indicates that it adapts to contract &apos;{1}&apos;, however, it returned an export with contract &apos;{2}&apos;. Adapters must return exports that have the same contract that the adapter indicates it adapts to..
  56            </summary>
  57        </member>
  58        <member name="P:Microsoft.Internal.Strings.Adapter_ExceptionDuringAdapt">
  59            <summary>
  60              Looks up a localized string similar to The adapter &apos;{0}&apos; threw an exception while to adapt from contract &apos;{1}&apos; to contract &apos;{2}&apos;..
  61            </summary>
  62        </member>
  63        <member name="P:Microsoft.Internal.Strings.Adapter_TypeMismatch">
  64            <summary>
  65              Looks up a localized string similar to The available adapter &apos;{0}&apos; is of type &apos;{1}&apos;. Adapters must be of type &apos;{2}&apos;..
  66            </summary>
  67        </member>
  68        <member name="P:Microsoft.Internal.Strings.Adapter_TypeNull">
  69            <summary>
  70              Looks up a localized string similar to The available adapter &apos;{0}&apos; is a null reference (Nothing in Visual Basic). Adapter must be of type &apos;{2}&apos;..
  71            </summary>
  72        </member>
  73        <member name="P:Microsoft.Internal.Strings.Argument_AssemblyReflectionOnly">
  74            <summary>
  75              Looks up a localized string similar to &apos;{0}&apos; is a reflection-only assembly which is not supported..
  76            </summary>
  77        </member>
  78        <member name="P:Microsoft.Internal.Strings.Argument_ElementReflectionOnlyType">
  79            <summary>
  80              Looks up a localized string similar to &apos;{0}&apos; contains a reflection-only type which is not supported..
  81            </summary>
  82        </member>
  83        <member name="P:Microsoft.Internal.Strings.Argument_ExportsEmpty">
  84            <summary>
  85              Looks up a localized string similar to &apos;exports&apos; cannot be empty when ImportDefinition.ImportCardinality is ImportCardinality.ExactlyOne..
  86            </summary>
  87        </member>
  88        <member name="P:Microsoft.Internal.Strings.Argument_ExportsTooMany">
  89            <summary>
  90              Looks up a localized string similar to &apos;exports&apos; cannot contain more than one element when ImportDefinition.ImportCardinality is ImportCardinality.ZeroOrOne or ImportCardinality.ExactlyOne..
  91            </summary>
  92        </member>
  93        <member name="P:Microsoft.Internal.Strings.Argument_NullElement">
  94            <summary>
  95              Looks up a localized string similar to &apos;{0}&apos; cannot contain a null (Nothing in Visual Basic) element..
  96            </summary>
  97        </member>
  98        <member name="P:Microsoft.Internal.Strings.ArgumentException_EmptyString">
  99            <summary>
 100              Looks up a localized string similar to &apos;{0}&apos; cannot be an empty string (&quot;&quot;)..
 101            </summary>
 102        </member>
 103        <member name="P:Microsoft.Internal.Strings.ArgumentOutOfRange_InvalidEnum">
 104            <summary>
 105              Looks up a localized string similar to The value of argument &apos;{0}&apos; ({1}) is invalid for Enum type &apos;{2}&apos;..
 106            </summary>
 107        </member>
 108        <member name="P:Microsoft.Internal.Strings.ArgumentValueType">
 109            <summary>
 110              Looks up a localized string similar to The argument was a value type which is not supported..
 111            </summary>
 112        </member>
 113        <member name="P:Microsoft.Internal.Strings.AssemblyFileNotFoundOrWrongType">
 114            <summary>
 115              Looks up a localized string similar to Assembly file {0} is either not found or not a dll or exe file..
 116            </summary>
 117        </member>
 118        <member name="P:Microsoft.Internal.Strings.AssemblyInformationCannotBeCached">
 119            <summary>
 120              Looks up a localized string similar to Information about the assembly &apos;{0}&apos; because it has been loaded from the network or the byte stream. Only assemblies loaded from files on disk are supported..
 121            </summary>
 122        </member>
 123        <member name="P:Microsoft.Internal.Strings.CacheableCatalogMustHaveProperConstructor">
 124            <summary>
 125              Looks up a localized string similar to The catalog &apos;{0}&apos; cannot be cached because it doesn&apos;t have a public constructor that accepts &apos;{1}&apos;  as an argument..
 126            </summary>
 127        </member>
 128        <member name="P:Microsoft.Internal.Strings.CachingFieldNotFound">
 129            <summary>
 130              Looks up a localized string similar to Invalid cache : field &apos;{1}&apos; on type &apos;{0}&apos; is not found..
 131            </summary>
 132        </member>
 133        <member name="P:Microsoft.Internal.Strings.CachingMethodNotFound">
 134            <summary>
 135              Looks up a localized string similar to Invalid cache : method &apos;{1}&apos; on type &apos;{0}&apos; is not found..
 136            </summary>
 137        </member>
 138        <member name="P:Microsoft.Internal.Strings.CachingTypeNotFound">
 139            <summary>
 140              Looks up a localized string similar to Invalid cache : type &apos;{0}&apos; is not found..
 141            </summary>
 142        </member>
 143        <member name="P:Microsoft.Internal.Strings.CannotCreateMetadataView">
 144            <summary>
 145              Looks up a localized string similar to Cannot create a MetadataView of metadataViewType &apos;{0}&apos;..
 146            </summary>
 147        </member>
 148        <member name="P:Microsoft.Internal.Strings.CardinalityMismatch_NoExports">
 149            <summary>
 150              Looks up a localized string similar to No exports were found that match the constraint &apos;{0}&apos;..
 151            </summary>
 152        </member>
 153        <member name="P:Microsoft.Internal.Strings.CardinalityMismatch_TooManyExports">
 154            <summary>
 155              Looks up a localized string similar to More than one exports were found that match the constraint &apos;{0}&apos;..
 156            </summary>
 157        </member>
 158        <member name="P:Microsoft.Internal.Strings.CatalogDoesNotSupportCaching">
 159            <summary>
 160              Looks up a localized string similar to The catalog  doesn&apos;t support caching..
 161            </summary>
 162        </member>
 163        <member name="P:Microsoft.Internal.Strings.CatalogIsNotCacheable">
 164            <summary>
 165              Looks up a localized string similar to The catalog cannot be cached as at least one of the contained catalogs does not support caching : &apos;{0}&apos;..
 166            </summary>
 167        </member>
 168        <member name="P:Microsoft.Internal.Strings.CompositionElement_UnknownOrigin">
 169            <summary>
 170              Looks up a localized string similar to Unknown Origin.
 171            </summary>
 172        </member>
 173        <member name="P:Microsoft.Internal.Strings.CompositionEngine_ComposeTookTooManyIterations">
 174            <summary>
 175              Looks up a localized string similar to The composition failed because it did not complete within &apos;{0:N0}&apos; iterations. This is most likely caused by a cycle in the dependency graph of a part which is marked with a non-shared creation policy..
 176            </summary>
 177        </member>
 178        <member name="P:Microsoft.Internal.Strings.CompositionEngine_PartCannotActivate">
 179            <summary>
 180              Looks up a localized string similar to Cannot activate part &apos;{0}&apos;..
 181            </summary>
 182        </member>
 183        <member name="P:Microsoft.Internal.Strings.CompositionEngine_PartCannotGetExportedObject">
 184            <summary>
 185              Looks up a localized string similar to Cannot get export &apos;{0}&apos; from part &apos;{1}&apos;..
 186            </summary>
 187        </member>
 188        <member name="P:Microsoft.Internal.Strings.CompositionEngine_PartCannotSetImport">
 189            <summary>
 190              Looks up a localized string similar to Cannot set import &apos;{0}&apos; on part &apos;{1}&apos;..
 191            </summary>
 192        </member>
 193        <member name="P:Microsoft.Internal.Strings.CompositionEngine_PartCycle">
 194            <summary>
 195              Looks up a localized string similar to Cannot compose part &apos;{0}&apos; because a cycle exists in the dependencies between the exports being composed. To break this cycle, consider changing some imports from constructor to property injection..
 196            </summary>
 197        </member>
 198        <member name="P:Microsoft.Internal.Strings.CompositionException_ErrorPrefix">
 199            <summary>
 200              Looks up a localized string similar to Resulting in:.
 201            </summary>
 202        </member>
 203        <member name="P:Microsoft.Internal.Strings.CompositionException_MultipleErrorsWithMultiplePaths">
 204            <summary>
 205              Looks up a localized string similar to The composition produced multiple composition errors, with {0:N0} root causes. The root causes are provided below..
 206            </summary>
 207        </member>
 208        <member name="P:Microsoft.Internal.Strings.CompositionException_ReviewErrorProperty">
 209            <summary>
 210              Looks up a localized string similar to Review the CompositionException.Errors property for more detailed information..
 211            </summary>
 212        </member>
 213        <member name="P:Microsoft.Internal.Strings.CompositionException_SingleErrorWithMultiplePaths">
 214            <summary>
 215              Looks up a localized string similar to The composition produced a single composition error, with {0:N0} root causes. The root causes are provided below..
 216            </summary>
 217        </member>
 218        <member name="P:Microsoft.Internal.Strings.CompositionException_SingleErrorWithSinglePath">
 219            <summary>
 220              Looks up a localized string similar to The composition produced a single composition error. The root cause is provided below..
 221            </summary>
 222        </member>
 223        <member name="P:Microsoft.Internal.Strings.ContractMismatch_ExportedObjectCannotBeCastToT">
 224            <summary>
 225              Looks up a localized string similar to Cannot cast the underlying exported object of type &apos;{0}&apos; to type &apos;{1}&apos;..
 226            </summary>
 227        </member>
 228        <member name="P:Microsoft.Internal.Strings.DirectoryNotFound">
 229            <summary>
 230              Looks up a localized string similar to Directory &apos;{0}&apos; could not be found..
 231            </summary>
 232        </member>
 233        <member name="P:Microsoft.Internal.Strings.ExportDefinitionNotOnThisComposablePart">
 234            <summary>
 235              Looks up a localized string similar to {0} did not originate from the ExportDefinitions property on this ComposablePart or its ComposablePartDefinition..
 236            </summary>
 237        </member>
 238        <member name="P:Microsoft.Internal.Strings.ImportDefinitionNotOnThisComposablePart">
 239            <summary>
 240              Looks up a localized string similar to {0} did not originate from the ImportDefinitions property on this ComposablePart or its ComposablePartDefinition..
 241            </summary>
 242        </member>
 243        <member name="P:Microsoft.Internal.Strings.ImportNotSetOnPart">
 244            <summary>
 245              Looks up a localized string similar to Could not finishing composing object of type &apos;{0}&apos;. The import &apos;{1}&apos; was not satisfied..
 246            </summary>
 247        </member>
 248        <member name="P:Microsoft.Internal.Strings.InternalExceptionMessage">
 249            <summary>
 250              Looks up a localized string similar to Internal error occurred. Additional information: &apos;{0}&apos;..
 251            </summary>
 252        </member>
 253        <member name="P:Microsoft.Internal.Strings.InvalidCacheToken">
 254            <summary>
 255              Looks up a localized string similar to Invalid cache token : &apos;{0}&apos;.
 256            </summary>
 257        </member>
 258        <member name="P:Microsoft.Internal.Strings.InvalidMetadataView">
 259            <summary>
 260              Looks up a localized string similar to The Type &apos;{0}&apos; supplied is not a valid Metadata View..
 261            </summary>
 262        </member>
 263        <member name="P:Microsoft.Internal.Strings.InvalidOperation_DefinitionCannotBeRecomposed">
 264            <summary>
 265              Looks up a localized string similar to &apos;definition&apos; cannot be set after OnComposed has been called because ImportDefinition.IsRecomposable is false..
 266            </summary>
 267        </member>
 268        <member name="P:Microsoft.Internal.Strings.InvalidOperation_GetExportedObjectBeforePrereqImportSet">
 269            <summary>
 270              Looks up a localized string similar to GetExportedObject cannot be called before prerequisite import &apos;{0}&apos; has been set..
 271            </summary>
 272        </member>
 273        <member name="P:Microsoft.Internal.Strings.InvalidOperationReentrantCompose">
 274            <summary>
 275              Looks up a localized string similar to A call to Compose occurred during a call to Compose on the same CompositionContainer object. Use the IsComposing property on CompositionContainer to ensure a composition is not already in progress before calling Compose..
 276            </summary>
 277        </member>
 278        <member name="P:Microsoft.Internal.Strings.MetadataItemNotSupported">
 279            <summary>
 280              Looks up a localized string similar to This export does not support the metadata item &apos;{0}&apos;..
 281            </summary>
 282        </member>
 283        <member name="P:Microsoft.Internal.Strings.MustProvideExportNameWhenExportingMethods">
 284            <summary>
 285              Looks up a localized string similar to Must provide export name specifically when exporting methods..
 286            </summary>
 287        </member>
 288        <member name="P:Microsoft.Internal.Strings.NotImplemented_NotOverriddenByDerived">
 289            <summary>
 290              Looks up a localized string similar to The {0} member must be overridden by a derived class..
 291            </summary>
 292        </member>
 293        <member name="P:Microsoft.Internal.Strings.NotSupportedReadOnlyDictionary">
 294            <summary>
 295              Looks up a localized string similar to The underlying dictionary is read-only..
 296            </summary>
 297        </member>
 298        <member name="P:Microsoft.Internal.Strings.ObjectAlreadyInitialized">
 299            <summary>
 300              Looks up a localized string similar to This property cannot be set after the object&apos;s public surface has been accessed..
 301            </summary>
 302        </member>
 303        <member name="P:Microsoft.Internal.Strings.ObjectMustBeInitialized">
 304            <summary>
 305              Looks up a localized string similar to This object has not been initialized - the property &apos;{0}&apos; must be set..
 306            </summary>
 307        </member>
 308        <member name="P:Microsoft.Internal.Strings.ReflectionModel_ExportMethodTooManyParameters">
 309            <summary>
 310              Looks up a localized string similar to Cannot create a delegate wrapper for method &apos;{0}&apos; because it has {1:N0} parameters. To be represented as one of the &apos;System.Action&apos; or &apos;System.Func&apos; delegate types, a method must have less than 5 parameters..
 311            </summary>
 312        </member>
 313        <member name="P:Microsoft.Internal.Strings.ReflectionModel_ExportNotReadable">
 314            <summary>
 315              Looks up a localized string similar to Cannot get the value of property &apos;{0}&apos;, because the member is not readable. The property must have an accessible getter..
 316            </summary>
 317        </member>
 318        <member name="P:Microsoft.Internal.Strings.ReflectionModel_ExportThrewException">
 319            <summary>
 320              Looks up a localized string similar to An exception occurred while trying to get the value of property &apos;{0}&apos;..
 321            </summary>
 322        </member>
 323        <member name="P:Microsoft.Internal.Strings.ReflectionModel_ImportCollectionNotWritable">
 324            <summary>
 325              Looks up a localized string similar to Cannot populate the value of enumerable field or property, &apos;{0}&apos; because the member&apos;s type does not have accessible &apos;Add&apos; and/or &apos;Clear&apos; methods. The member must be either a collection type, or writable and assignable from type &apos;{1}&apos;..
 326            </summary>
 327        </member>
 328        <member name="P:Microsoft.Internal.Strings.ReflectionModel_ImportCollectionNull">
 329            <summary>
 330              Looks up a localized string similar to Cannot populate the value of enumerable field or property &apos;{0}&apos; because the member returned null (Nothing in Visual Basic). The member must either be pre-initialized by the type, or writable and assignable from type &apos;{1}&apos;..
 331            </summary>
 332        </member>
 333        <member name="P:Microsoft.Internal.Strings.ReflectionModel_ImportNotAssignableFromExport">
 334            <summary>
 335              Looks up a localized string similar to The export &apos;{0}&apos; is not assignable to type &apos;{1}&apos;..
 336            </summary>
 337        </member>
 338        <member name="P:Microsoft.Internal.Strings.ReflectionModel_ImportNotWritable">
 339            <summary>
 340              Looks up a localized string similar to Cannot set the value of field or property &apos;{0}&apos; because the member is not writable. If the member is a property, it must have an accessible setter; otherwise, if it is a field, it must not be read-only..
 341            </summary>
 342        </member>
 343        <member name="P:Microsoft.Internal.Strings.ReflectionModel_ImportThrewException">
 344            <summary>
 345              Looks up a localized string similar to An exception occurred while trying to set the value of property &apos;{0}&apos;..
 346            </summary>
 347        </member>
 348        <member name="P:Microsoft.Internal.Strings.ReflectionModel_PartConstructorMissing">
 349            <summary>
 350              Looks up a localized string similar to Cannot create an instance of type &apos;{0}&apos; because a constructor could not be selected for construction. Ensure that the type either has a default constructor, or a single constructor marked with the &apos;System.ComponentModel.Composition.ImportingConstructorAttribute&apos;..
 351            </summary>
 352        </member>
 353        <member name="P:Microsoft.Internal.Strings.ReflectionModel_PartConstructorThrewException">
 354            <summary>
 355              Looks up a localized string similar to An exception occurred while trying to create an instance of type &apos;{0}&apos;..
 356            </summary>
 357        </member>
 358        <member name="P:Microsoft.Internal.Strings.ReflectionModel_PartImportCompletedThrewException">
 359            <summary>
 360              Looks up a localized string similar to An exception occurred while calling the &apos;ImportCompleted&apos; method on type &apos;{0}&apos;..
 361            </summary>
 362        </member>
 363        <member name="P:Microsoft.Internal.Strings.SetMethodsNotSupported">
 364            <summary>
 365              Looks up a localized string similar to Set Methods not supported &apos;{0}&apos;..
 366            </summary>
 367        </member>
 368        <member name="P:Microsoft.Internal.Strings.TypeCatalog_Empty">
 369            <summary>
 370              Looks up a localized string similar to &lt;Empty&gt;.
 371            </summary>
 372        </member>
 373        <member name="P:Microsoft.Internal.Strings.UnsupportedCachedValue">
 374            <summary>
 375              Looks up a localized string similar to Objects of type &apos;{0}&apos; cannot be written into the cache..
 376            </summary>
 377        </member>
 378        <member name="T:System.ComponentModel.Composition.Primitives.ComposablePart">
 379            <summary>
 380                Defines the <see langword="abstract"/> base class for composable parts, which 
 381                import and produce exported objects.
 382            </summary>
 383        </member>
 384        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePart.#ctor">
 385            <summary>
 386                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> class.
 387            </summary>
 388        </member>
 389        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePart.Dispose">
 390            <summary>
 391                Releases all resources used by the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
 392            </summary>
 393        </member>
 394        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePart.OnComposed">
 395            <summary>
 396                Called by the composition engine when all required imports on the part have been
 397                satisfied.
 398            </summary>
 399            <exception cref="T:System.ObjectDisposedException">
 400                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> has been disposed of.
 401            </exception>
 402            <exception cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException">
 403                An error occurred activating the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
 404            </exception>
 405        </member>
 406        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePart.GetExportedObject(System.ComponentModel.Composition.Primitives.ExportDefinition)">
 407            <summary>
 408                Gets the exported object described by the specified definition.
 409            </summary>
 410            <param name="definition">
 411                One of the <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects from the 
 412                <see cref="P:System.ComponentModel.Composition.Primitives.ComposablePart.ExportDefinitions"/> property describing the exported object
 413                to return.
 414            </param>
 415            <returns>
 416                The exported <see cref="T:System.Object"/> described by <paramref name="definition"/>.
 417            </returns>
 418            <exception cref="T:System.ArgumentNullException">
 419                <paramref name="definition"/> is <see langword="null"/>.
 420            </exception>
 421            <exception cref="T:System.ArgumentException">
 422                <paramref name="definition"/> did not originate from the <see cref="P:System.ComponentModel.Composition.Primitives.ComposablePart.ExportDefinitions"/>
 423                property on the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
 424            </exception>
 425            <exception cref="T:System.InvalidOperationException">
 426                One or more pre-requisite imports, indicated by <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.IsPrerequisite"/>,
 427                have not been set.
 428            </exception>
 429            <exception cref="T:System.ObjectDisposedException">
 430                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> has been disposed of.
 431            </exception>
 432            <exception cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException">
 433                An error occurred getting the exported object described by the <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/>.
 434            </exception>
 435        </member>
 436        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePart.SetImport(System.ComponentModel.Composition.Primitives.ImportDefinition,System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Primitives.Export})">
 437            <summary>
 438                Sets the import described by the specified definition with the specified exports.
 439            </summary>
 440            <param name="definition">
 441                One of the <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> objects from the 
 442                <see cref="P:System.ComponentModel.Composition.Primitives.ComposablePart.ImportDefinitions"/> property describing the import to be set.
 443            </param>
 444            <param name="exports">
 445                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects of which 
 446                to set the import described by <paramref name="definition"/>.
 447            </param>
 448            <exception cref="T:System.ArgumentNullException">
 449                <paramref name="definition"/> is <see langword="null"/>.
 450                <para>
 451                    -or-
 452                </para>
 453                <paramref name="exports"/> is <see langword="null"/>.
 454            </exception>
 455            <exception cref="T:System.ArgumentException">
 456                <paramref name="definition"/> did not originate from the <see cref="P:System.ComponentModel.Composition.Primitives.ComposablePart.ImportDefinitions"/>
 457                property on the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
 458                <para>
 459                    -or-
 460                </para>
 461                <paramref name="exports"/> contains an element that is <see langword="null"/>.
 462                <para>
 463                    -or-
 464                </para>
 465                <paramref name="exports"/> is empty and <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/> is 
 466                <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne"/>.
 467                <para>
 468                    -or-
 469                </para>
 470                <paramref name="exports"/> contains more than one element and 
 471                <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/> is <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ZeroOrOne"/> or 
 472                <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne"/>.
 473            </exception>
 474            <exception cref="T:System.InvalidOperationException">
 475                <see cref="M:System.ComponentModel.Composition.Primitives.ComposablePart.OnComposed"/> has been previously called and 
 476                <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.IsRecomposable"/> is <see langword="false"/>.
 477            </exception>
 478            <exception cref="T:System.ObjectDisposedException">
 479                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> has been disposed of.
 480            </exception>
 481            <exception cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException">
 482                An error occurred setting the import described by the <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
 483            </exception>
 484        </member>
 485        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePart.Dispose(System.Boolean)">
 486            <summary>
 487                Releases the unmanaged resources used by the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> and 
 488                optionally releases the managed resources.
 489            </summary>
 490            <param name="disposing">
 491                <see langword="true"/> to release both managed and unmanaged resources; 
 492                <see langword="false"/> to release only unmanaged resources.
 493            </param>
 494        </member>
 495        <member name="P:System.ComponentModel.Composition.Primitives.ComposablePart.ExportDefinitions">
 496            <summary>
 497                Gets the export definitions that describe the exported objects provided by the part.
 498            </summary>
 499            <value>
 500                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects describing
 501                the exported objects provided by the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
 502            </value>
 503            <exception cref="T:System.ObjectDisposedException">
 504                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> has been disposed of.
 505            </exception>
 506            <remarks>
 507                <para>
 508                    <note type="inheritinfo">
 509                        If the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> was created from a 
 510                        <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/>, this property should return the result of 
 511                        <see cref="P:System.ComponentModel.Composition.Primitives.ComposablePartDefinition.ExportDefinitions"/>.
 512                    </note>
 513                 </para>
 514                 <para>
 515                    <note type="inheritinfo">
 516                        Overriders of this property should never return <see langword="null"/>.
 517                        If the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> does not have exports, return an empty 
 518                        <see cref="T:System.Collections.Generic.IEnumerable`1"/> instead.
 519                    </note>
 520                </para>
 521            </remarks>
 522        </member>
 523        <member name="P:System.ComponentModel.Composition.Primitives.ComposablePart.ImportDefinitions">
 524            <summary>
 525                Gets the import definitions that describe the imports required by the part.
 526            </summary>
 527            <value>
 528                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> objects describing
 529                the imports required by the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
 530            </value>
 531            <exception cref="T:System.ObjectDisposedException">
 532                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> has been disposed of.
 533            </exception>
 534            <remarks>
 535                <para>
 536                    <note type="inheritinfo">
 537                        If the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> was created from a 
 538                        <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/>, this property should return the result of 
 539                        <see cref="P:System.ComponentModel.Composition.Primitives.ComposablePartDefinition.ImportDefinitions"/>.
 540                    </note>
 541                 </para>
 542                 <para>
 543                    <note type="inheritinfo">
 544                        Overrides of this property should never return <see langword="null"/>.
 545                        If the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> does not have imports, return an empty 
 546                        <see cref="T:System.Collections.Generic.IEnumerable`1"/> instead.
 547                    </note>
 548                </para>
 549            </remarks>
 550        </member>
 551        <member name="P:System.ComponentModel.Composition.Primitives.ComposablePart.Metadata">
 552            <summary>
 553                Gets the metadata of the part.
 554            </summary>
 555            <value>
 556                An <see cref="T:System.Collections.Generic.IDictionary`2"/> containing the metadata of the 
 557                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>. The default is an empty, read-only
 558                <see cref="T:System.Collections.Generic.IDictionary`2"/>.
 559            </value>
 560            <exception cref="T:System.ObjectDisposedException">
 561                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> has been disposed of.
 562            </exception>
 563            <remarks>
 564                <para>
 565                    <note type="inheritinfo">
 566                        If the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> was created from a 
 567                        <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/>, this property should return the result of 
 568                        <see cref="P:System.ComponentModel.Composition.Primitives.ComposablePartDefinition.Metadata"/>.
 569                    </note>
 570                 </para>
 571                 <para>
 572                    <note type="inheritinfo">
 573                        Overriders of this property should return a read-only
 574                        <see cref="T:System.Collections.Generic.IDictionary`2"/> object with a case-sensitive, 
 575                        non-linguistic comparer, such as <see cref="P:System.StringComparer.Ordinal"/>, 
 576                        and should never return <see langword="null"/>. If the 
 577                        <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> does not contain metadata, return an 
 578                        empty <see cref="T:System.Collections.Generic.IDictionary`2"/> instead.
 579                    </note>
 580                 </para>
 581            </remarks>
 582        </member>
 583        <member name="P:System.ComponentModel.Composition.Primitives.ComposablePart.RequiresDisposal">
 584            <summary>
 585                Determines if this <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> requires its dispose method called. This
 586                is to help prevent memory bloat by the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> because it
 587                doesn't need to hold strong references to <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> that aren't disposable.
 588            
 589                The value of this property should be constant throughout the lifetime of the part because some
 590                code such as the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> will use it to determine if it should
 591                hold a reference to this part for disposal.
 592            </summary>
 593            <returns>
 594                <see langword="true"/> if this part should have its dispose called;
 595                otherwise <see langword="false"/> which is the default.
 596            </returns>
 597        </member>
 598        <member name="T:System.ComponentModel.Composition.Primitives.ICompositionElement">
 599            <summary>
 600                Represents an element that participates in composition.
 601            </summary>
 602        </member>
 603        <member name="P:System.ComponentModel.Composition.Primitives.ICompositionElement.DisplayName">
 604            <summary>
 605                Gets the display name of the composition element.
 606            </summary>
 607            <value>
 608                A <see cref="T:System.String"/> containing a human-readable display name of the <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/>.
 609            </value>
 610            <remarks>
 611                <note type="implementnotes">
 612                    Implementors of this property should never return <see langword="null"/> or an empty 
 613                    string ("").
 614                </note>
 615            </remarks>
 616        </member>
 617        <member name="P:System.ComponentModel.Composition.Primitives.ICompositionElement.Origin">
 618            <summary>
 619                Gets the composition element from which the current composition element
 620                originated.
 621            </summary>
 622            <value>
 623                A <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/> from which the current 
 624                <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/> originated, or <see langword="null"/> 
 625                if the <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/> is the root composition element.
 626            </value>
 627        </member>
 628        <member name="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition">
 629            <summary>
 630                Defines the <see langword="abstract"/> base class for composable part definitions, which 
 631                describe, and allow the creation of, <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> objects.
 632            </summary>
 633        </member>
 634        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePartDefinition.#ctor">
 635            <summary>
 636                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> class.
 637            </summary>
 638        </member>
 639        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePartDefinition.CreatePart">
 640            <summary>
 641                Creates a new instance of a part that the definition describes.
 642            </summary>
 643            <returns>
 644                The created <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
 645            </returns>
 646            <remarks>
 647                <para>
 648                    <note type="inheritinfo">
 649                        Derived types overriding this method should return a new instance of a 
 650                        <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> on every invoke and should never return 
 651                        <see langword="null"/>.
 652                    </note>
 653                </para>
 654            </remarks>
 655        </member>
 656        <member name="P:System.ComponentModel.Composition.Primitives.ComposablePartDefinition.ExportDefinitions">
 657            <summary>
 658                Gets the export definitions that describe the exported objects provided by parts 
 659                created by the definition.
 660            </summary>
 661            <value>
 662                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects describing
 663                the exported objects provided by <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> objects created by the 
 664                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/>.
 665            </value>
 666            <remarks>
 667                <note type="inheritinfo">
 668                    Overrides of this property should never return <see langword="null"/>.
 669                    If the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> objects created by the 
 670                    <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> do not provide exported objects, return 
 671                    an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/> instead.
 672                </note>
 673            </remarks>
 674        </member>
 675        <member name="P:System.ComponentModel.Composition.Primitives.ComposablePartDefinition.ImportDefinitions">
 676            <summary>
 677                Gets the import definitions that describe the imports required by parts created 
 678                by the definition.
 679            </summary>
 680            <value>
 681                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> objects describing
 682                the imports required by <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> objects created by the 
 683                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/>.
 684            </value>
 685            <remarks>
 686                <note type="inheritinfo">
 687                    Overriders of this property should never return <see langword="null"/>.
 688                    If the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> objects created by the 
 689                    <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> do not have imports, return an empty 
 690                    <see cref="T:System.Collections.Generic.IEnumerable`1"/> instead.
 691                </note>
 692            </remarks>
 693        </member>
 694        <member name="P:System.ComponentModel.Composition.Primitives.ComposablePartDefinition.Metadata">
 695            <summary>
 696                Gets the metadata of the definition.
 697            </summary>
 698            <value>
 699                An <see cref="T:System.Collections.Generic.IDictionary`2"/> containing the metadata of the 
 700                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/>. The default is an empty, read-only
 701                <see cref="T:System.Collections.Generic.IDictionary`2"/>.
 702            </value>
 703            <remarks>
 704                <para>
 705                    <note type="inheritinfo">
 706                        Overriders of this property should return a read-only
 707                        <see cref="T:System.Collections.Generic.IDictionary`2"/> object with a case-sensitive, 
 708                        non-linguistic comparer, such as <see cref="P:System.StringComparer.Ordinal"/>, 
 709                        and should never return <see langword="null"/>. If the 
 710                        <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> does contain metadata, 
 711                        return an empty <see cref="T:System.Collections.Generic.IDictionary`2"/> instead.
 712                    </note>
 713                </para>
 714            </remarks>
 715        </member>
 716        <member name="T:System.ComponentModel.Composition.Primitives.ExportDefinition">
 717            <summary>
 718                Describes the contract that an <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> object satisfies.
 719            </summary>
 720        </member>
 721        <member name="M:System.ComponentModel.Composition.Primitives.ExportDefinition.#ctor">
 722            <summary>
 723                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> class.
 724            </summary>
 725            <remarks>
 726                <note type="inheritinfo">
 727                    Derived types calling this constructor must override <see cref="P:System.ComponentModel.Composition.Primitives.ExportDefinition.ContractName"/>
 728                    and optionally, <see cref="P:System.ComponentModel.Composition.Primitives.ExportDefinition.Metadata"/>. By default, <see cref="P:System.ComponentModel.Composition.Primitives.ExportDefinition.Metadata"/>
 729                    returns an empty, read-only dictionary.
 730                </note>
 731            </remarks>
 732        </member>
 733        <member name="M:System.ComponentModel.Composition.Primitives.ExportDefinition.#ctor(System.String,System.Collections.Generic.IDictionary{System.String,System.Object})">
 734            <summary>
 735                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> class with 
 736                the specified contract name and metadata.
 737            </summary>
 738            <param name="contractName">
 739                A <see cref="T:System.String"/> containing the contract name of the 
 740                <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/>.
 741            </param>
 742            <param name="metadata">
 743                An <see cref="T:System.Collections.Generic.IDictionary`2"/> containing the metadata of the 
 744                <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/>; or <see langword="null"/> to set the 
 745                <see cref="P:System.ComponentModel.Composition.Primitives.ExportDefinition.Metadata"/> property to an empty, read-only 
 746                <see cref="T:System.Collections.Generic.IDictionary`2"/>.
 747            </param>
 748            <exception cref="T:System.ArgumentNullException">
 749                <paramref name="contractName"/> is <see langword="null"/>.
 750            </exception>
 751            <exception cref="T:System.ArgumentException">
 752                <paramref name="contractName"/> is an empty string ("").
 753            </exception>
 754        </member>
 755        <member name="M:System.ComponentModel.Composition.Primitives.ExportDefinition.ToString">
 756            <summary>
 757                Returns a string representation of the export definition.
 758            </summary>
 759            <returns>
 760                A <see cref="T:System.String"/> containing the value of the <see cref="P:System.ComponentModel.Composition.Primitives.ExportDefinition.ContractName"/> property.
 761            </returns>
 762        </member>
 763        <member name="P:System.ComponentModel.Composition.Primitives.ExportDefinition.ContractName">
 764            <summary>
 765                Gets the contract name of the export definition.
 766            </summary>
 767            <value>
 768                A <see cref="T:System.String"/> containing the contract name of the 
 769                <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/>.
 770            </value>
 771            <exception cref="T:System.NotImplementedException">
 772                The property was not overridden by a derived class.
 773            </exception>
 774            <remarks>
 775                <note type="inheritinfo">
 776                    Overriders of this property should never return <see langword="null"/> 
 777                    or an empty string ("").
 778                </note>
 779            </remarks>
 780        </member>
 781        <member name="P:System.ComponentModel.Composition.Primitives.ExportDefinition.Metadata">
 782            <summary>
 783                Gets the metadata of the export definition.
 784            </summary>
 785            <value>
 786                An <see cref="T:System.Collections.Generic.IDictionary`2"/> containing the metadata of the 
 787                <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/>. The default is an empty, read-only
 788                <see cref="T:System.Collections.Generic.IDictionary`2"/>.
 789            </value>
 790            <remarks>
 791                <para>
 792                    <note type="inheritinfo">
 793                        Overriders of this property should return a read-only
 794                        <see cref="T:System.Collections.Generic.IDictionary`2"/> object with a case-sensitive, 
 795                        non-linguistic comparer, such as <see cref="P:System.StringComparer.Ordinal"/>, 
 796                        and should never return <see langword="null"/>.
 797                        If the <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> does not contain metadata 
 798                        return an empty <see cref="T:System.Collections.Generic.IDictionary`2"/> instead.
 799                    </note>
 800                </para>
 801            </remarks>
 802        </member>
 803        <member name="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition">
 804            <summary>
 805                Represents a contract name and metadata-based import 
 806                required by a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> object.
 807            </summary>
 808        </member>
 809        <member name="T:System.ComponentModel.Composition.Primitives.ImportDefinition">
 810            <summary>
 811                Represents an import required by a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> object.
 812            </summary>
 813        </member>
 814        <member name="M:System.ComponentModel.Composition.Primitives.ImportDefinition.#ctor">
 815            <summary>
 816                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> class.
 817            </summary>
 818            <remarks>
 819                <note type="inheritinfo">
 820                    Derived types calling this constructor must override the <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Constraint"/> 
 821                    property, and optionally, the <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/>, <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.IsPrerequisite"/> 
 822                    and <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.IsRecomposable"/> 
 823                    properties.
 824                </note>
 825            </remarks>
 826        </member>
 827        <member name="M:System.ComponentModel.Composition.Primitives.ImportDefinition.#ctor(System.Linq.Expressions.Expression{System.Func{System.ComponentModel.Composition.Primitives.ExportDefinition,System.Boolean}},System.ComponentModel.Composition.Primitives.ImportCardinality,System.Boolean,System.Boolean)">
 828            <summary>
 829                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> class 
 830                with the specified constraint, cardinality, value indicating if the import 
 831                definition is recomposable and a value indicating if the import definition 
 832                is a prerequisite.
 833            </summary>
 834            <param name="constraint">
 835                A <see cref="T:System.Linq.Expressions.Expression`1"/> containing a <see cref="T:System.Func`2"/> 
 836                that defines the conditions that must be matched for the <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> 
 837                to be satisfied by an <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
 838            </param>
 839            <param name="cardinality">
 840                One of the <see cref="T:System.ComponentModel.Composition.Primitives.ImportCardinality"/> values indicating the 
 841                cardinality of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects required by the
 842                <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
 843            </param>
 844            <param name="isRecomposable">
 845                <see langword="true"/> if the <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> can be satisfied 
 846                multiple times throughout the lifetime of a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>, otherwise, 
 847                <see langword="false"/>.
 848            </param>
 849            <param name="isPrerequisite">
 850                <see langword="true"/> if the <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> is required to be 
 851                satisfied before a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> can start producing exported 
 852                objects; otherwise, <see langword="false"/>.
 853            </param>
 854            <exception cref="T:System.ArgumentNullException">
 855                <paramref name="constraint"/> is <see langword="null"/>.
 856            </exception>
 857            <exception cref="T:System.ArgumentException">
 858                <paramref name="cardinality"/> is not one of the <see cref="T:System.ComponentModel.Composition.Primitives.ImportCardinality"/> 
 859                values.
 860            </exception>
 861        </member>
 862        <member name="M:System.ComponentModel.Composition.Primitives.ImportDefinition.ToString">
 863            <summary>
 864                Returns a string representation of the import definition.
 865            </summary>
 866            <returns>
 867                A <see cref="T:System.String"/> containing the value of the <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Constraint"/> property.
 868            </returns>
 869        </member>
 870        <member name="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality">
 871            <summary>
 872                Gets the cardinality of the exports required by the import definition.
 873            </summary>
 874            <value>
 875                One of the <see cref="T:System.ComponentModel.Composition.Primitives.ImportCardinality"/> values indicating the 
 876                cardinality of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects required by the
 877                <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>. The default is 
 878                <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne"/>
 879            </value>
 880        </member>
 881        <member name="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Constraint">
 882            <summary>
 883                Gets an expression that defines conditions that must be matched for the import 
 884                described by the import definition to be satisfied.
 885            </summary>
 886            <returns>
 887                A <see cref="T:System.Linq.Expressions.Expression`1"/> containing a <see cref="T:System.Func`2"/> 
 888                that defines the conditions that must be matched for the 
 889                <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> to be satisfied by an <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
 890            </returns>
 891            <exception cref="T:System.NotImplementedException">
 892                The property was not overridden by a derived class.
 893            </exception>
 894            <remarks>
 895                <note type="inheritinfo">
 896                    Overriders of this property should never return <see langword="null"/>.
 897                </note>
 898            </remarks>
 899        </member>
 900        <member name="P:System.ComponentModel.Composition.Primitives.ImportDefinition.IsPrerequisite">
 901            <summary>
 902                Gets a value indicating whether the import definition is required to be 
 903                satisfied before a part can start producing exported objects.
 904            </summary>
 905            <value>
 906                <see langword="true"/> if the <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> is required to be 
 907                satisfied before a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> can start producing exported 
 908                objects; otherwise, <see langword="false"/>. The default is <see langword="true"/>.
 909            </value>
 910        </member>
 911        <member name="P:System.ComponentModel.Composition.Primitives.ImportDefinition.IsRecomposable">
 912            <summary>
 913                Gets a value indicating whether the import definition can be satisfied multiple times.
 914            </summary>
 915            <value>
 916                <see langword="true"/> if the <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> can be satisfied 
 917                multiple times throughout the lifetime of a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>, otherwise, 
 918                <see langword="false"/>. The default is <see langword="false"/>.
 919            </value>
 920        </member>
 921        <member name="M:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.#ctor">
 922            <summary>
 923                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/> class.
 924            </summary>
 925            <remarks>
 926                <note type="inheritinfo">
 927                    Derived types calling this constructor must override the <see cref="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.ContractName"/> 
 928                    property, and optionally, the <see cref="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.RequiredMetadata"/>, 
 929                    <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/>, <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.IsPrerequisite"/>,
 930                    <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.IsRecomposable"/> and <see cref="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.RequiredCreationPolicy"/> properties.
 931                </note>
 932            </remarks>
 933        </member>
 934        <member name="M:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.#ctor(System.String,System.ComponentModel.Composition.Primitives.ImportCardinality,System.Boolean,System.Boolean)">
 935            <summary>
 936                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/> class 
 937                with the specified contract name, cardinality, value indicating if the import 
 938                definition is recomposable and a value indicating if the import definition 
 939                is a prerequisite.
 940            </summary>
 941            <param name="contractName">
 942                A <see cref="T:System.String"/> containing the contract name of the 
 943                <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> required by the <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/>.
 944            </param>
 945            <param name="cardinality">
 946                One of the <see cref="T:System.ComponentModel.Composition.Primitives.ImportCardinality"/> values indicating the 
 947                cardinality of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects required by the
 948                <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/>.
 949            </param>
 950            <param name="isRecomposable">
 951                <see langword="true"/> if the <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/> can be satisfied 
 952                multiple times throughout the lifetime of a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>, otherwise, 
 953                <see langword="false"/>.
 954            </param>
 955            <param name="isPrerequisite">
 956                <see langword="true"/> if the <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/> is required to be 
 957                satisfied before a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> can start producing exported 
 958                objects; otherwise, <see langword="false"/>.
 959            </param>
 960            <exception cref="T:System.ArgumentNullException">
 961                <paramref name="contractName"/> is <see langword="null"/>.
 962            </exception>
 963            <exception cref="T:System.ArgumentException">
 964                <paramref name="contractName"/> is an empty string ("").
 965                <para>
 966                    -or-
 967                </para>
 968                <paramref name="cardinality"/> is not one of the <see cref="T:System.ComponentModel.Composition.Primitives.ImportCardinality"/> 
 969                values.
 970            </exception>
 971        </member>
 972        <member name="M:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.#ctor(System.String,System.Collections.Generic.IEnumerable{System.String},System.ComponentModel.Composition.Primitives.ImportCardinality,System.Boolean,System.Boolean,System.ComponentModel.Composition.CreationPolicy)">
 973            <summary>
 974                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/> class 
 975                with the specified contract name, required metadataq, cardinality, value indicating 
 976                if the import definition is recomposable and a value indicating if the import definition 
 977                is a prerequisite.
 978            </summary>
 979            <param name="contractName">
 980                A <see cref="T:System.String"/> containing the contract name of the 
 981                <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> required by the <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/>.
 982            </param>
 983            <param name="requiredMetadata">
 984                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.String"/> objects containing
 985                the metadata names of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> required by the 
 986                <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/>; or <see langword="null"/> to
 987                set the <see cref="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.RequiredMetadata"/> property to an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
 988            </param>
 989            <param name="cardinality">
 990                One of the <see cref="T:System.ComponentModel.Composition.Primitives.ImportCardinality"/> values indicating the 
 991                cardinality of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects required by the
 992                <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/>.
 993            </param>
 994            <param name="isRecomposable">
 995                <see langword="true"/> if the <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/> can be satisfied 
 996                multiple times throughout the lifetime of a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>, otherwise, 
 997                <see langword="false"/>.
 998            </param>
 999            <param name="isPrerequisite">
1000                <see langword="true"/> if the <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/> is required to be 
1001                satisfied before a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> can start producing exported 
1002                objects; otherwise, <see langword="false"/>.
1003            </param>
1004            <exception cref="T:System.ArgumentNullException">
1005                <paramref name="contractName"/> is <see langword="null"/>.
1006            </exception>
1007            <exception cref="T:System.ArgumentException">
1008                <paramref name="contractName"/> is an empty string ("").
1009                <para>
1010                    -or-
1011                </para>
1012                <paramref name="requiredMetadata"/> contains an element that is <see langword="null"/>.
1013                <para>
1014                    -or-
1015                </para>
1016                <paramref name="cardinality"/> is not one of the <see cref="T:System.ComponentModel.Composition.Primitives.ImportCardinality"/> 
1017                values.
1018            </exception>
1019        </member>
1020        <member name="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.ContractName">
1021            <summary>
1022                Gets the contract name of the export required by the import definition.
1023            </summary>
1024            <value>
1025                A <see cref="T:System.String"/> containing the contract name of the 
1026                <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> required by the <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/>.
1027            </value>
1028            <exception cref="T:System.NotImplementedException">
1029                The property was not overridden by a derived class.
1030            </exception>
1031            <remarks>
1032                <note type="inheritinfo">
1033                    Overriders of this property should never return <see langword="null"/>
1034                    or an empty string ("").
1035                </note>
1036            </remarks>
1037        </member>
1038        <member name="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.RequiredMetadata">
1039            <summary>
1040                Gets the metadata names of the export required by the import definition.
1041            </summary>
1042            <value>
1043                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.String"/> objects containing
1044                the metadata names of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> required by the 
1045                <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/>. The default is an empty 
1046                <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
1047            </value>
1048            <remarks>
1049                <note type="inheritinfo">
1050                    Overriders of this property should never return <see langword="null"/>
1051                    or return an <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains an element that is
1052                    <see langword="null"/>. If the definition does not contain required metadata, 
1053                    return an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/> instead.
1054                </note>
1055            </remarks>
1056        </member>
1057        <member name="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.RequiredCreationPolicy">
1058            <summary>
1059                Gets or sets a value indicating that the importer requires a specific 
1060                <see cref="T:System.ComponentModel.Composition.CreationPolicy"/> for the exports used to satisfy this import. T
1061            </summary>
1062            <value>
1063                <see cref="F:System.ComponentModel.Composition.CreationPolicy.Any"/> - default value, used if the importer doesn't 
1064                    require a specific <see cref="T:System.ComponentModel.Composition.CreationPolicy"/>.
1065            
1066                <see cref="F:System.ComponentModel.Composition.CreationPolicy.Shared"/> - Requires that all exports used should be shared
1067                    by everyone in the container.
1068            
1069                <see cref="F:System.ComponentModel.Composition.CreationPolicy.NonShared"/> - Requires that all exports used should be 
1070                    non-shared in a container and thus everyone gets their own instance.
1071            </value>
1072        </member>
1073        <member name="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.Constraint">
1074            <summary>
1075                Gets an expression that defines conditions that must be matched for the import 
1076                described by the import definition to be satisfied.
1077            </summary>
1078            <returns>
1079                A <see cref="T:System.Linq.Expressions.Expression`1"/> containing a <see cref="T:System.Func`2"/> 
1080                that defines the conditions that must be matched for the 
1081                <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> to be satisfied by an <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
1082            </returns>
1083            <remarks>
1084                <para>
1085                    This property returns an expression that defines conditions based on the 
1086                    <see cref="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.ContractName"/> and <see cref="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.RequiredMetadata"/> properties.
1087                </para>
1088            </remarks>
1089        </member>
1090        <member name="T:System.ComponentModel.Composition.Caching.AttributedModel.AttributedComposablePartCatalogSite">
1091            <summary>
1092            This cached catalog site is used by all catalogs that containe AttributedComposablePartDefinitions
1093            </summary>
1094        </member>
1095        <member name="M:System.ComponentModel.Composition.Caching.ComposablePartCatalogCache.GetCacheCatalog(System.ComponentModel.Composition.Caching.ICachedComposablePartCatalogSite)">
1096            <summary>
1097            Returns the catalog that represents the cache. Note, that this is not the originally cached catalog, bur rather a representation
1098            of the cached part definitions.
1099            </summary>
1100            <param name="catalogSite"></param>
1101            <returns></returns>
1102        </member>
1103        <member name="P:System.ComponentModel.Composition.Caching.ComposablePartCatalogCache.Metadata">
1104            <summary>
1105            Catalog metadata
1106            </summary>
1107        </member>
1108        <member name="P:System.ComponentModel.Composition.Caching.ComposablePartCatalogCache.Reader">
1109            <summary>
1110            The reader that has provided the cache
1111            </summary>
1112        </member>
1113        <member name="M:System.ComponentModel.Composition.Caching.ComposablePartCatalogCacheReader.ReadCacheCore(System.Object)">
1114            <summary>
1115            Reads the catalog cache given the cache token.
1116            </summary>
1117            <param name="cacheToken">The cache token.</param>
1118            <returns>The catalog cache corresponding to the specified cache token.</returns>
1119        </member>
1120        <member name="M:System.ComponentModel.Composition.Caching.ComposablePartCatalogCacheReader.ReadCatalog(System.Object)">
1121            <summary>
1122            Reads the catalog from the cache given the specified cache token. This methos trows if thew catalog with the given
1123            token doesn't exist.
1124            </summary>
1125            <param name="cacheToken">The cache token.</param>
1126            <returns>The catalog corresponding to the specified cache token.</returns>
1127        </member>
1128        <member name="M:System.ComponentModel.Composition.Caching.ComposablePartCatalogCacheReader.ReadRootCatalog">
1129            <summary>
1130            Reads the root catalog from the cache
1131            </summary>
1132            <returns>The root catalog.</returns>
1133        </member>
1134        <member name="M:System.ComponentModel.Composition.Caching.ComposablePartCatalogCacheReader.Dispose">
1135            <summary>
1136            Releases all the resources allocated by the <see cref="T:System.ComponentModel.Composition.Caching.ComposablePartCatalogCacheReader"/> and completes the cache writing.
1137            </summary>
1138        </member>
1139        <member name="M:System.ComponentModel.Composition.Caching.ComposablePartCatalogCacheReader.Dispose(System.Boolean)">
1140            <summary>
1141            Releases all the resources allocated by the <see cref="T:System.ComponentModel.Composition.Caching.ComposablePartCatalogCacheWriter"/> and completes the cache writing.
1142            </summary>
1143            <param name="disposing">Is called from Dispose() if set to <c>true</c>, otherwise is called from the finalizer.</param>
1144        </member>
1145        <member name="P:System.ComponentModel.Composition.Caching.ComposablePartCatalogCacheReader.RootCacheToken">
1146            <summary>
1147            Returns the cache token corresponding to the root catalog in the cache.
1148            </summary>
1149        </member>
1150        <member name="M:System.ComponentModel.Composition.Caching.ComposablePartCatalogCacheWriter.WriteCache(System.Type,System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Primitives.ComposablePartDefinition},System.Collections.Generic.IDictionary{System.String,System.Object},System.ComponentModel.Composition.Caching.ICachedComposablePartCatalogSite)">
1151            <summary>
1152            Writes part definitions and catalog metadata into the cache.
1153            </summary>
1154            <param name="catalogType">Catalog type.</param>
1155            <param name="partDefinitions">Parts definitions.</param>
1156            <param name="catalogMetadata">Catalog Metadata.</param>
1157            <param name="catalogSite">Catalog Site</param>
1158            <returns>Catalog cache token. This value can be cached and used to locate this cache wen reading from the cache.</returns>
1159        </member>
1160        <member name="M:System.ComponentModel.Composition.Caching.ComposablePartCatalogCacheWriter.WriteCacheCore(System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Primitives.ComposablePartDefinition},System.Collections.Generic.IDictionary{System.String,System.Object},System.ComponentModel.Composition.Caching.ICachedComposablePartCatalogSite)">
1161            <summary>
1162            Writes part definitions and catalog metadata into the cache.
1163            </summary>
1164            <param name="partDefinitions">Parts definitions.</param>
1165            <param name="catalogMetadata">Catalog Metadata.</param>
1166            <param name="catalogSite">Catalog Site</param>
1167            <returns>Catalog cache token. This value can be cached and used to locate this cache wen reading from the cache.</returns>
1168        </member>
1169        <member name="M:System.ComponentModel.Composition.Caching.ComposablePartCatalogCacheWriter.WriteRootCacheToken(System.Object)">
1170            <summary>
1171            Sets "root" catalog of the cache - that is one that the corresponding <see cref="T:System.ComponentModel.Composition.Caching.ComposablePartCatalogCache"/> will open first when the 
1172            appropriate storage is read. This method may be called multiple times; the last set value is expected to be written to the cache when the
1173            <see cref="T:System.ComponentModel.Composition.Caching.ComposablePartCatalogCacheWriter"/> is disposed.
1174            </summary>
1175            <param name="catalogToken">Value returned by a call to WriteCache.</param>
1176        </member>
1177        <member name="M:System.ComponentModel.Composition.Caching.ComposablePartCatalogCacheWriter.Dispose">
1178            <summary>
1179            Releases all the resources allocated by the <see cref="T:System.ComponentModel.Composition.Caching.ComposablePartCatalogCacheWriter"/> and completes the cache writing.
1180            </summary>
1181        </member>
1182        <member name="M:System.ComponentModel.Composition.Caching.ComposablePartCatalogCacheWriter.Dispose(System.Boolean)">
1183            <summary>
1184            Releases all the resources allocated by the <see cref="T:System.ComponentModel.Composition.Caching.ComposablePartCatalogCacheWriter"/> and completes the cache writing.
1185            </summary>
1186            <param name="disposing">Is called from Dispose() if set to <c>true</c>, otherwise is called from the finalizer.</param>
1187        </member>
1188        <member name="T:System.ComponentModel.Composition.Caching.EmptyCachedComposablePartCatalogSite">
1189            <summary>
1190            This is used by catalogs that don't actually have any parts, but only metadata.
1191            We use this type when "null" is passed for the site.
1192            </summary>
1193        </member>
1194        <member name="M:System.ComponentModel.Composition.Caching.ICachedComposablePartCatalog.CacheCatalog(System.ComponentModel.Composition.Caching.ComposablePartCatalogCacheWriter)">
1195            <summary>
1196            Caches the contents of the catalog using the specified  <see cref="T:System.ComponentModel.Composition.Caching.ComposablePartCatalogCacheWriter"/>.
1197            </summary>
1198            <param name="writer">The cache writer.</param>
1199            <returns>The cache token corresponding to the written catalog cache.</returns>
1200        </member>
1201        <member name="P:System.ComponentModel.Composition.Caching.ICachedComposablePartCatalog.IsCacheUpToDate">
1202            <summary>
1203            Specifies whether the cache the state of the catalog has changed since the last time it was read from the cache.
1204            </summary>
1205        </member>
1206        <member name="T:System.ComponentModel.Composition.CardinalityMismatchException">
1207            <summary>
1208                The exception that is thrown when the cardinality of a <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>
1209                does not match the cardinality of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects available in an 
1210                <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/>.
1211            </summary>
1212        </member>
1213        <member name="M:System.ComponentModel.Composition.CardinalityMismatchException.#ctor">
1214            <summary>
1215                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CardinalityMismatchException"/> class.
1216            </summary>
1217        </member>
1218        <member name="M:System.ComponentModel.Composition.CardinalityMismatchException.#ctor(System.String)">
1219            <summary>
1220                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CardinalityMismatchException"/> class 
1221                with the specified error message.
1222            </summary>
1223            <param name="message">
1224                A <see cref="T:System.String"/> containing a message that describes the 
1225                <see cref="T:System.ComponentModel.Composition.CardinalityMismatchException"/>; or <see langword="null"/> to set
1226                the <see cref="P:System.Exception.Message"/> property to its default value.
1227            </param>
1228        </member>
1229        <member name="M:System.ComponentModel.Composition.CardinalityMismatchException.#ctor(System.String,System.Exception)">
1230            <summary>
1231                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CardinalityMismatchException"/> class 
1232                with the specified error message and exception that is the cause of the  
1233                exception.
1234            </summary>
1235            <param name="message">
1236                A <see cref="T:System.String"/> containing a message that describes the 
1237                <see cref="T:System.ComponentModel.Composition.CardinalityMismatchException"/>; or <see langword="null"/> to set
1238                the <see cref="P:System.Exception.Message"/> property to its default value.
1239            </param>
1240            <param name="innerException">
1241                The <see cref="T:System.Exception"/> that is the underlying cause of the 
1242                <see cref="T:System.ComponentModel.Composition.CardinalityMismatchException"/>; or <see langword="null"/> to set
1243                the <see cref="P:System.Exception.InnerException"/> property to <see langword="null"/>.
1244            </param>
1245        </member>
1246        <member name="M:System.ComponentModel.Composition.CardinalityMismatchException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
1247            <summary>
1248                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CardinalityMismatchException"/> class 
1249                with the specified serialization data.
1250            </summary>
1251            <param name="info">
1252                The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the 
1253                <see cref="T:System.ComponentModel.Composition.CardinalityMismatchException"/>.
1254            </param>
1255            <param name="context">
1256                The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the 
1257                source or destination.
1258            </param>
1259            <exception cref="T:System.ArgumentNullException">
1260                <paramref name="info"/> is <see langword="null"/>.
1261            </exception>
1262            <exception cref="T:System.Runtime.Serialization.SerializationException">
1263                <paramref name="info"/> is missing a required value.
1264            </exception>
1265            <exception cref="T:System.InvalidCastException">
1266                <paramref name="info"/> contains a value that cannot be cast to the correct type.
1267            </exception>
1268        </member>
1269        <member name="T:System.ComponentModel.Composition.CatalogDiscoveryMode">
1270            <summary>
1271                Specifies when an attributed part is discovered by a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/>.
1272            </summary>
1273        </member>
1274        <member name="F:System.ComponentModel.Composition.CatalogDiscoveryMode.Auto">
1275            <summary>
1276                Indicates that an attributed part will be discovered by a 
1277                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> if a member declared at the level of the type's 
1278                hierarchy, or if the type itself, is marked with the <see cref="T:System.ComponentModel.Composition.ImportAttribute"/>,
1279                <see cref="T:System.ComponentModel.Composition.ImportingConstructorAttribute"/>, or <see cref="T:System.ComponentModel.Composition.ExportAttribute"/> 
1280                attributes. Inherited members are not considered.
1281            </summary>
1282        </member>
1283        <member name="F:System.ComponentModel.Composition.CatalogDiscoveryMode.Never">
1284            <summary>
1285                Indicates that an attributed part will never be discovered by a 
1286                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/>.
1287            </summary>
1288        </member>
1289        <member name="F:System.ComponentModel.Composition.CatalogDiscoveryMode.Always">
1290            <summary>
1291                Indicates that an attributed part will be discovered by a 
1292                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> if a member declared anywhere in the type's
1293                hierarchy, or if the type itself, is marked with the <see cref="T:System.ComponentModel.Composition.ImportAttribute"/>,
1294                <see cref="T:System.ComponentModel.Composition.ImportingConstructorAttribute"/>, or <see cref="T:System.ComponentModel.Composition.ExportAttribute"/> 
1295                attributes.
1296            </summary>
1297        </member>
1298        <member name="T:System.ComponentModel.Composition.ContractMismatchException">
1299            <summary>
1300                The exception that is thrown when the underlying exported object or metadata of an 
1301                <see cref="T:System.ComponentModel.Composition.Export`1"/> or <see cref="T:System.ComponentModel.Composition.Export`2"/> object cannot be 
1302                cast to <c>T</c> or <c>TMetadataView</c>, respectively.
1303            </summary>
1304        </member>
1305        <member name="M:System.ComponentModel.Composition.ContractMismatchException.#ctor">
1306            <summary>
1307                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ContractMismatchException"/> class.
1308            </summary>
1309        </member>
1310        <member name="M:System.ComponentModel.Composition.ContractMismatchException.#ctor(System.String)">
1311            <summary>
1312                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ContractMismatchException"/> class 
1313                with the specified error message.
1314            </summary>
1315            <param name="message">
1316                A <see cref="T:System.String"/> containing a message that describes the 
1317                <see cref="T:System.ComponentModel.Composition.ContractMismatchException"/>; or <see langword="null"/> to set
1318                the <see cref="P:System.Exception.Message"/> property to its default value.
1319            </param>
1320        </member>
1321        <member name="M:System.ComponentModel.Composition.ContractMismatchException.#ctor(System.String,System.Exception)">
1322            <summary>
1323                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ContractMismatchException"/> class 
1324                with the specified error message and exception that is the cause of the  
1325                exception.
1326            </summary>
1327            <param name="message">
1328                A <see cref="T:System.String"/> containing a message that describes the 
1329                <see cref="T:System.ComponentModel.Composition.ContractMismatchException"/>; or <see langword="null"/> to set
1330                the <see cref="P:System.Exception.Message"/> property to its default value.
1331            </param>
1332            <param name="innerException">
1333                The <see cref="T:System.Exception"/> that is the underlying cause of the 
1334                <see cref="T:System.ComponentModel.Composition.ContractMismatchException"/>; or <see langword="null"/> to set
1335                the <see cref="P:System.Exception.InnerException"/> property to <see langword="null"/>.
1336            </param>
1337        </member>
1338        <member name="M:System.ComponentModel.Composition.ContractMismatchException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
1339            <summary>
1340                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ContractMismatchException"/> class 
1341                with the specified serialization data.
1342            </summary>
1343            <param name="info">
1344                The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the 
1345                <see cref="T:System.ComponentModel.Composition.ContractMismatchException"/>.
1346            </param>
1347            <param name="context">
1348                The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the 
1349                source or destination.
1350            </param>
1351            <exception cref="T:System.ArgumentNullException">
1352                <paramref name="info"/> is <see langword="null"/>.
1353            </exception>
1354            <exception cref="T:System.Runtime.Serialization.SerializationException">
1355                <paramref name="info"/> is missing a required value.
1356            </exception>
1357            <exception cref="T:System.InvalidCastException">
1358                <paramref name="info"/> contains a value that cannot be cast to the correct type.
1359            </exception>
1360        </member>
1361        <member name="T:System.ComponentModel.Composition.CompositionError">
1362            <summary>
1363                Represents an error that occurs during composition in a <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
1364            </summary>
1365        </member>
1366        <member name="M:System.ComponentModel.Composition.CompositionError.#ctor(System.String)">
1367            <summary>
1368                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionError"/> class
1369                with the specified error message.
1370            </summary>
1371            <param name="message">
1372                A <see cref="T:System.String"/> containing a message that describes the 
1373                <see cref="T:System.ComponentModel.Composition.CompositionError"/>; or <see langword="null"/> to set the 
1374                <see cref="P:System.ComponentModel.Composition.CompositionError.Message"/> property to an empty string ("").
1375            </param>
1376        </member>
1377        <member name="M:System.ComponentModel.Composition.CompositionError.#ctor(System.String,System.ComponentModel.Composition.Primitives.ICompositionElement)">
1378            <summary>
1379                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionError"/> class
1380                with the specified error message and composition element that is the
1381                cause of the composition error.
1382            </summary>
1383            <param name="element">
1384                The <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/> that is the cause of the
1385                <see cref="T:System.ComponentModel.Composition.CompositionError"/>; or <see langword="null"/> to set
1386                the <see cref="P:System.ComponentModel.Composition.CompositionError.Element"/> property to 
1387                <see langword="null"/>.
1388            </param>
1389            <param name="message">
1390                A <see cref="T:System.String"/> containing a message that describes the 
1391                <see cref="T:System.ComponentModel.Composition.CompositionError"/>; or <see langword="null"/> to set the 
1392                <see cref="P:System.ComponentModel.Composition.CompositionError.Message"/> property to an empty string ("").
1393            </param>
1394        </member>
1395        <member name="M:System.ComponentModel.Composition.CompositionError.#ctor(System.String,System.Exception)">
1396            <summary>
1397                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionError"/> class 
1398                with the specified error message and exception that is the cause of the  
1399                composition error.
1400            </summary>
1401            <param name="message">
1402                A <see cref="T:System.String"/> containing a message that describes the 
1403                <see cref="T:System.ComponentModel.Composition.CompositionError"/>; or <see langword="null"/> to set the 
1404                <see cref="P:System.ComponentModel.Composition.CompositionError.Message"/> property to an empty string ("").
1405            </param>
1406            <param name="exception">
1407                The <see cref="P:System.ComponentModel.Composition.CompositionError.Exception"/> that is the underlying cause of the 
1408                <see cref="T:System.ComponentModel.Composition.CompositionError"/>; or <see langword="null"/> to set
1409                the <see cref="P:System.ComponentModel.Composition.CompositionError.Exception"/> property to <see langword="null"/>.
1410            </param>
1411        </member>
1412        <member name="M:System.ComponentModel.Composition.CompositionError.#ctor(System.String,System.ComponentModel.Composition.Primitives.ICompositionElement,System.Exception)">
1413            <summary>
1414                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionError"/> class 
1415                with the specified error message, and composition element and exception that 
1416                is the cause of the composition error.
1417            </summary>
1418            <param name="message">
1419                A <see cref="T:System.String"/> containing a message that describes the 
1420                <see cref="T:System.ComponentModel.Composition.CompositionError"/>; or <see langword="null"/> to set the 
1421                <see cref="P:System.ComponentModel.Composition.CompositionError.Message"/> property to an empty string ("").
1422            </param>
1423            <param name="element">
1424                The <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/> that is the cause of the
1425                <see cref="T:System.ComponentModel.Composition.CompositionError"/>; or <see langword="null"/> to set
1426                the <see cref="P:System.ComponentModel.Composition.CompositionError.Element"/> property to 
1427                <see langword="null"/>.
1428            </param>
1429            <param name="exception">
1430                The <see cref="P:System.ComponentModel.Composition.CompositionError.Exception"/> that is the underlying cause of the 
1431                <see cref="T:System.ComponentModel.Composition.CompositionError"/>; or <see langword="null"/> to set
1432                the <see cref="P:System.ComponentModel.Composition.CompositionError.Exception"/> property to <see langword="null"/>.
1433            </param>
1434        </member>
1435        <member name="M:System.ComponentModel.Composition.CompositionError.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
1436            <summary>
1437                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionError"/> class 
1438                with the specified serialization data.
1439            </summary>
1440            <param name="info">
1441                The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the 
1442                <see cref="T:System.ComponentModel.Composition.CompositionError"/>.
1443            </param>
1444            <param name="context">
1445                The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the 
1446                source or destination.
1447            </param>
1448            <exception cref="T:System.ArgumentNullException">
1449                <paramref name="info"/> is <see langword="null"/>.
1450            </exception>
1451            <exception cref="T:System.Runtime.Serialization.SerializationException">
1452                <paramref name="info"/> is missing a required value.
1453            </exception>
1454            <exception cref="T:System.InvalidCastException">
1455                <paramref name="info"/> contains a value that cannot be cast to the correct type.
1456            </exception>
1457        </member>
1458        <member name="M:System.ComponentModel.Composition.CompositionError.ToString">
1459            <summary>
1460                Returns a string representation of the composition error.
1461            </summary>
1462            <returns>
1463                A <see cref="T:System.String"/> containing the <see cref="P:System.ComponentModel.Composition.CompositionError.Message"/> property.
1464            </returns>
1465        </member>
1466        <member name="M:System.ComponentModel.Composition.CompositionError.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
1467            <summary>
1468                Gets the serialization data of the exception.
1469            </summary>
1470            <param name="info">
1471                The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the 
1472                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>.
1473            </param>
1474            <param name="context">
1475                The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the 
1476                source or destination.
1477            </param>
1478        </member>
1479        <member name="M:System.ComponentModel.Composition.CompositionError.System#Runtime#Serialization#ISerializable#GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
1480            <summary>
1481                Gets the serialization data of the exception.
1482            </summary>
1483            <param name="info">
1484                The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the 
1485                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>.
1486            </param>
1487            <param name="context">
1488                The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the 
1489                source or destination.
1490            </param>
1491            <exception cref="T:System.ArgumentNullException">
1492                <paramref name="info"/> is <see langword="null"/>.
1493            </exception>
1494        </member>
1495        <member name="P:System.ComponentModel.Composition.CompositionError.Element">
1496            <summary>
1497                Gets the composition element that is the cause of the error.
1498            </summary>
1499            <value>
1500                The <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/> that is the cause of the
1501                <see cref="T:System.ComponentModel.Composition.CompositionError"/>. The default is <see langword="null"/>.
1502            </value>
1503        </member>
1504        <member name="P:System.ComponentModel.Composition.CompositionError.Message">
1505            <summary>
1506                Gets the message that describes the composition error.
1507            </summary>
1508            <value>
1509                A <see cref="T:System.String"/> containing a message that describes the
1510                <see cref="T:System.ComponentModel.Composition.CompositionError"/>.
1511            </value>
1512        </member>
1513        <member name="P:System.ComponentModel.Composition.CompositionError.Exception">
1514            <summary>
1515                Gets the exception that is the underlying cause of the composition error.
1516            </summary>
1517            <value>
1518                The <see cref="P:System.ComponentModel.Composition.CompositionError.Exception"/> that is the underlying cause of the 
1519                <see cref="T:System.ComponentModel.Composition.CompositionError"/>. The default is <see langword="null"/>.
1520            </value>
1521        </member>
1522        <member name="P:System.ComponentModel.Composition.CompositionResult`1.Value">
1523            <summary>
1524                Gets the value from the result, throwing a CompositionException if there are any errors.
1525            </summary>
1526        </member>
1527        <member name="T:System.ComponentModel.Composition.ExportCollection`2">
1528            <summary>
1529                Represents a collection of <see cref="T:System.ComponentModel.Composition.Export`2"/> objects.
1530            </summary>
1531        </member>
1532        <member name="M:System.ComponentModel.Composition.ExportCollection`2.#ctor">
1533            <summary>
1534                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportCollection`2"/> class 
1535                that is empty.
1536            </summary>
1537        </member>
1538        <member name="M:System.ComponentModel.Composition.ExportCollection`2.#ctor(System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Export{`0,`1}})">
1539            <summary>
1540                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportCollection`2"/> class, 
1541                adding the specified <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Export`2"/> 
1542                objects to the collection.
1543            </summary>
1544            <param name="items">
1545                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Export`2"/> objects to add 
1546                to the <see cref="T:System.ComponentModel.Composition.ExportCollection`2"/>; or <see langword="null"/> to create 
1547                an <see cref="T:System.ComponentModel.Composition.ExportCollection`2"/> that is empty.
1548            </param>
1549        </member>
1550        <member name="T:System.ComponentModel.Composition.ExportCollection`1">
1551            <summary>
1552                Represents a collection of <see cref="T:System.ComponentModel.Composition.Export`1"/> objects.
1553            </summary>
1554        </member>
1555        <member name="M:System.ComponentModel.Composition.ExportCollection`1.#ctor">
1556            <summary>
1557                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportCollection`1"/> class 
1558                that is empty.
1559            </summary>
1560        </member>
1561        <member name="M:System.ComponentModel.Composition.ExportCollection`1.#ctor(System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Export{`0}})">
1562            <summary>
1563                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportCollection`1"/> class,
1564                adding the specified <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Export`1"/> 
1565                objects to the collection.
1566            </summary>
1567            <param name="items">
1568                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Export`1"/> objects to add 
1569                to the <see cref="T:System.ComponentModel.Composition.ExportCollection`1"/>; or <see langword="null"/> to create an 
1570                <see cref="T:System.ComponentModel.Composition.ExportCollection`1"/> that is empty.
1571            </param>
1572        </member>
1573        <member name="T:System.ComponentModel.Composition.Export`2">
1574            <summary>
1575                Represents an export. That is, a type that is made up of a delay-created exported object, 
1576                metadata that describes that object and a strongly-typed view over that metadata.
1577            </summary>
1578        </member>
1579        <member name="T:System.ComponentModel.Composition.Export`1">
1580            <summary>
1581                Represents an export. That is, a type that is made up of a delay-created exported object
1582                and metadata that describes that object.
1583            </summary>
1584        </member>
1585        <member name="T:System.ComponentModel.Composition.Primitives.Export">
1586            <summary>
1587                Represents an export. That is, a type that is made up of a delay-created exported object 
1588                and metadata that describes that object.
1589            </summary>
1590        </member>
1591        <member name="M:System.ComponentModel.Composition.Primitives.Export.#ctor">
1592            <summary>
1593                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> class.
1594            </summary>
1595            <remarks>
1596                <note type="inheritinfo">
1597                    Derived types calling this constructor must override <see cref="P:System.ComponentModel.Composition.Primitives.Export.Definition"/>
1598                    and <see cref="M:System.ComponentModel.Composition.Primitives.Export.GetExportedObjectCore"/>.
1599                </note>
1600            </remarks>
1601        </member>
1602        <member name="M:System.ComponentModel.Composition.Primitives.Export.#ctor(System.String,System.Func{System.Object})">
1603            <summary>
1604                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> class 
1605                with the specified contract name and exported object getter.
1606            </summary>
1607            <param name="contractName">
1608                A <see cref="T:System.String"/> containing the contract name of the 
1609                <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
1610            </param>
1611            <param name="exportedObjectGetter">
1612                A <see cref="T:System.Func`1"/> that is called to create the exported object of the 
1613                <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>. This allows the creation of the object to be delayed 
1614                until <see cref="M:System.ComponentModel.Composition.Primitives.Export.GetExportedObject"/> is called.
1615            </param>
1616            <exception cref="T:System.ArgumentNullException">
1617                <paramref name="contractName"/> is <see langword="null"/>.
1618                <para>
1619                    -or-
1620                </para>
1621                <paramref name="exportedObjectGetter"/> is <see langword="null"/>.
1622            </exception>
1623            <exception cref="T:System.ArgumentException">
1624                <paramref name="contractName"/> is an empty string ("").
1625            </exception>
1626        </member>
1627        <member name="M:System.ComponentModel.Composition.Primitives.Export.#ctor(System.String,System.Collections.Generic.IDictionary{System.String,System.Object},System.Func{System.Object})">
1628            <summary>
1629                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> class 
1630                with the specified contract name, metadata and exported object getter.
1631            </summary>
1632            <param name="contractName">
1633                A <see cref="T:System.String"/> containing the contract name of the 
1634                <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
1635            </param>
1636            <param name="metadata">
1637                An <see cref="T:System.Collections.Generic.IDictionary`2"/> containing the metadata of the 
1638                <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>; or <see langword="null"/> to set the 
1639                <see cref="P:System.ComponentModel.Composition.Primitives.Export.Metadata"/> property to an empty, read-only 
1640                <see cref="T:System.Collections.Generic.IDictionary`2"/>.
1641            </param>
1642            <param name="exportedObjectGetter">
1643                A <see cref="T:System.Func`1"/> that is called to create the exported object of the 
1644                <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>. This allows the creation of the object to be delayed 
1645                until <see cref="M:System.ComponentModel.Composition.Primitives.Export.GetExportedObject"/> is called.
1646            </param>
1647            <exception cref="T:System.ArgumentNullException">
1648                <paramref name="contractName"/> is <see langword="null"/>.
1649                <para>
1650                    -or-
1651                </para>
1652                <paramref name="exportedObjectGetter"/> is <see langword="null"/>.
1653            </exception>
1654            <exception cref="T:System.ArgumentException">
1655                <paramref name="contractName"/> is an empty string ("").
1656            </exception>
1657        </member>
1658        <member name="M:System.ComponentModel.Composition.Primitives.Export.#ctor(System.ComponentModel.Composition.Primitives.ExportDefinition,System.Func{System.Object})">
1659            <summary>
1660                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> class 
1661                with the specified export definition and exported object getter.
1662            </summary>
1663            <param name="definition">
1664                An <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> that describes the contract that the 
1665                <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> satisfies.
1666            </param>
1667            <param name="exportedObjectGetter">
1668                A <see cref="T:System.Func`1"/> that is called to create the exported object of the 
1669                <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>. This allows the creation of the object to be delayed 
1670                until  <see cref="M:System.ComponentModel.Composition.Primitives.Export.GetExportedObject"/> is called.
1671            </param>
1672            <exception cref="T:System.ArgumentNullException">
1673                <paramref name="definition"/> is <see langword="null"/>.
1674                <para>
1675                    -or-
1676                </para>
1677                <paramref name="exportedObjectGetter"/> is <see langword="null"/>.
1678            </exception>
1679        </member>
1680        <member name="M:System.ComponentModel.Composition.Primitives.Export.GetExportedObject">
1681            <summary>
1682                Returns the exported object of the export.
1683            </summary>
1684            <returns>
1685                The exported <see cref="T:System.Object"/> of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
1686            </returns>
1687            <exception cref="T:System.ComponentModel.Composition.CompositionException">
1688                An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will 
1689                contain a collection of errors that occurred.
1690            </exception>
1691            <exception cref="T:System.ComponentModel.Composition.ContractMismatchException">
1692                The current instance is an instance of <see cref="T:System.ComponentModel.Composition.Export`1"/> and the underlying 
1693                exported object cannot be cast to <c>T</c>.
1694            </exception>
1695            <exception cref="T:System.NotImplementedException">
1696                The <see cref="M:System.ComponentModel.Composition.Primitives.Export.GetExportedObjectCore"/> method was not overridden by a derived class.
1697            </exception>
1698        </member>
1699        <member name="M:System.ComponentModel.Composition.Primitives.Export.GetExportedObjectCore">
1700            <summary>
1701                Returns the exported object of the export.
1702            </summary>
1703            <returns>
1704                The exported <see cref="T:System.Object"/> of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
1705            </returns>
1706            <exception cref="T:System.ComponentModel.Composition.CompositionException">
1707                An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will 
1708                contain a collection of errors that occurred.
1709            </exception>
1710            <exception cref="T:System.ComponentModel.Composition.ContractMismatchException">
1711                The current instance is an instance of <see cref="T:System.ComponentModel.Composition.Export`1"/> and the underlying 
1712                exported object cannot be cast to <c>T</c>.
1713            </exception>
1714            <exception cref="T:System.NotImplementedException">
1715                The method was not overridden by a derived class.
1716            </exception>
1717            <remarks>
1718                <note type="inheritinfo">
1719                    Overriders of this method should never return
1720                    <see langword="null"/>.
1721                </note>
1722            </remarks>
1723        </member>
1724        <member name="P:System.ComponentModel.Composition.Primitives.Export.Definition">
1725            <summary>
1726                Gets the definition that describes the contract that the export satisfies.
1727            </summary>
1728            <value>
1729                An <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> that describes the contract that 
1730                the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> satisfies.
1731            </value>
1732            <exception cref="T:System.NotImplementedException">
1733                This property was not overridden by a derived class.
1734            </exception>
1735            <remarks>
1736                <note type="inheritinfo">
1737                    Overriders of this property should never return
1738                    <see langword="null"/>.
1739                </note>
1740            </remarks>
1741        </member>
1742        <member name="P:System.ComponentModel.Composition.Primitives.Export.Metadata">
1743            <summary>
1744                Gets the metadata of the export.
1745            </summary>
1746            <value>
1747                An <see cref="T:System.Collections.Generic.IDictionary`2"/> containing the metadata of the 
1748                <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
1749            </value>
1750            <exception cref="T:System.NotImplementedException">
1751                The <see cref="P:System.ComponentModel.Composition.Primitives.Export.Definition"/> property was not overridden by a derived class.
1752            </exception>
1753            <remarks>
1754                <para>
1755                    This property returns the value of <see cref="P:System.ComponentModel.Composition.Primitives.ExportDefinition.Metadata"/>
1756                    of the <see cref="P:System.ComponentModel.Composition.Primitives.Export.Definition"/> property.
1757                </para>
1758            </remarks>
1759        </member>
1760        <member name="M:System.ComponentModel.Composition.Export`1.#ctor">
1761            <summary>
1762                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Export`1"/> class.
1763            </summary>
1764            <remarks>
1765                <note type="inheritinfo">
1766                    Derived types calling this constructor must override <see cref="P:System.ComponentModel.Composition.Primitives.Export.Definition"/>
1767                    and <see cref="M:System.ComponentModel.Composition.Primitives.Export.GetExportedObjectCore"/>.
1768                </note>
1769            </remarks>
1770        </member>
1771        <member name="M:System.ComponentModel.Composition.Export`1.#ctor(System.Func{`0})">
1772            <summary>
1773                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Export`1"/> class 
1774                with the specified exported object getter and using a contract 
1775                name derived from <typeparamref name="T"/>.
1776            </summary>
1777            <param name="exportedObjectGetter">
1778                A <see cref="T:System.Func`1"/> that is called to create the exported object of the 
1779                <see cref="T:System.ComponentModel.Composition.Export`1"/>. This allows the creation of the object to be delayed 
1780                until  <see cref="M:System.ComponentModel.Composition.Export`1.GetExportedObject"/> is called.
1781            </param>
1782            <exception cref="T:System.ArgumentNullException">
1783                <paramref name="exportedObjectGetter"/> is <see langword="null"/>.
1784            </exception>
1785            <remarks>
1786                <para>
1787                    The <see cref="P:System.ComponentModel.Composition.Primitives.ExportDefinition.ContractName"/> property of <see cref="P:System.ComponentModel.Composition.Primitives.Export.Definition"/> 
1788                    is the result of calling <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on 
1789                    <typeparamref name="T"/>.
1790                </para>
1791            </remarks>
1792        </member>
1793        <member name="M:System.ComponentModel.Composition.Export`1.#ctor(System.String,System.Func{`0})">
1794            <summary>
1795                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Export`1"/> class 
1796                with the specified contract name and exported object getter.
1797            </summary>
1798            <param name="contractName">
1799                A <see cref="T:System.String"/> containing the contract name of the 
1800                <see cref="T:System.ComponentModel.Composition.Export`1"/>.
1801            </param>
1802            <param name="exportedObjectGetter">
1803                A <see cref="T:System.Func`1"/> that is called to create the exported object of the 
1804                <see cref="T:System.ComponentModel.Composition.Export`1"/>. This allows the creation of the object to be delayed 
1805                until <see cref="M:System.ComponentModel.Composition.Export`1.GetExportedObject"/> is called.
1806            </param>
1807            <exception cref="T:System.ArgumentNullException">
1808                <paramref name="contractName"/> is <see langword="null"/>.
1809                <para>
1810                    -or-
1811                </para>
1812                <paramref name="exportedObjectGetter"/> is <see langword="null"/>.
1813            </exception>
1814            <exception cref="T:System.ArgumentException">
1815                <paramref name="contractName"/> is an empty string ("").
1816            </exception>
1817        </member>
1818        <member name="M:System.ComponentModel.Composition.Export`1.#ctor(System.String,System.Collections.Generic.IDictionary{System.String,System.Object},System.Func{`0})">
1819            <summary>
1820                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Export`1"/> class 
1821                with the specified contract name, metadata and exported object getter.
1822            </summary>
1823            <param name="contractName">
1824                A <see cref="T:System.String"/> containing the contract name of the 
1825                <see cref="T:System.ComponentModel.Composition.Export`1"/>.
1826            </param>
1827            <param name="metadata">
1828                An <see cref="T:System.Collections.Generic.IDictionary`2"/> containing the metadata of the 
1829                <see cref="T:System.ComponentModel.Composition.Export`1"/>; or <see langword="null"/> to set the 
1830                <see cref="P:System.ComponentModel.Composition.Primitives.Export.Metadata"/> property to an empty, read-only 
1831                <see cref="T:System.Collections.Generic.IDictionary`2"/>.
1832            </param>
1833            <param name="exportedObjectGetter">
1834                A <see cref="T:System.Func`1"/> that is called to create the exported object of the 
1835                <see cref="T:System.ComponentModel.Composition.Export`1"/>. This allows the creation of the object to be delayed 
1836                until  <see cref="M:System.ComponentModel.Composition.Export`1.GetExportedObject"/> is called.
1837            </param>
1838            <exception cref="T:System.ArgumentNullException">
1839                <paramref name="contractName"/> is <see langword="null"/>.
1840                <para>
1841                    -or-
1842                </para>
1843                <paramref name="exportedObjectGetter"/> is <see langword="null"/>.
1844            </exception>
1845            <exception cref="T:System.ArgumentException">
1846                <paramref name="contractName"/> is an empty string ("").
1847            </exception>
1848        </member>
1849        <member name="M:System.ComponentModel.Composition.Export`1.#ctor(System.ComponentModel.Composition.Primitives.ExportDefinition,System.Func{`0})">
1850            <summary>
1851                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Export`1"/> class 
1852                with the specified export definition and exported object getter.
1853            </summary>
1854            <param name="definition">
1855                An <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> that describes the contract that the 
1856                <see cref="T:System.ComponentModel.Composition.Export`1"/> satisfies.
1857            </param>
1858            <param name="exportedObjectGetter">
1859                A <see cref="T:System.Func`1"/> that is called to create the exported object of the 
1860                <see cref="T:System.ComponentModel.Composition.Export`1"/>. This allows the creation of the object to be delayed 
1861                until  <see cref="M:System.ComponentModel.Composition.Export`1.GetExportedObject"/> is called.
1862            </param>
1863            <exception cref="T:System.ArgumentNullException">
1864                <paramref name="definition"/> is <see langword="null"/>.
1865                <para>
1866                    -or-
1867                </para>
1868                <paramref name="exportedObjectGetter"/> is <see langword="null"/>.
1869            </exception>
1870        </member>
1871        <member name="M:System.ComponentModel.Composition.Export`1.GetExportedObject">
1872            <summary>
1873                Returns the exported object of the export.
1874            </summary>
1875            <returns>
1876                A <typeparamref name="T"/> representing the exported object of the 
1877                <see cref="T:System.ComponentModel.Composition.Export`1"/>.
1878            </returns>
1879            <exception cref="T:System.ComponentModel.Composition.CompositionException">
1880                An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
1881                contain a collection of errors that occurred.
1882            </exception>
1883            <exception cref="T:System.ComponentModel.Composition.ContractMismatchException">
1884                The underlying exported object cannot be cast to <typeparamref name="T"/>.
1885            </exception>
1886            <exception cref="T:System.NotImplementedException">
1887                The <see cref="M:System.ComponentModel.Composition.Primitives.Export.GetExportedObjectCore"/> method was not overridden by a derived class.
1888            </exception>
1889        </member>
1890        <member name="M:System.ComponentModel.Composition.Export`2.#ctor">
1891            <summary>
1892                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Export`2"/> class.
1893            </summary>
1894            <remarks>
1895                <note type="inheritinfo">
1896                    Derived types calling this constructor must override <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> 
1897                    and <see cref="M:System.ComponentModel.Composition.Primitives.Export.GetExportedObjectCore"/>.
1898                </note>
1899            </remarks>
1900        </member>
1901        <member name="M:System.ComponentModel.Composition.Export`2.#ctor(System.Collections.Generic.IDictionary{System.String,System.Object},System.Func{`0})">
1902            <summary>
1903                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Export`1"/> class 
1904                with the specified metadata, exported object getter and using a 
1905                contract name derived from <typeparamref name="T"/>.
1906            </summary>
1907            <param name="metadata">
1908                An <see cref="T:System.Collections.Generic.IDictionary`2"/> containing the metadata of the 
1909                <see cref="T:System.ComponentModel.Composition.Export`2"/>; or <see langword="null"/> to set the 
1910                <see cref="P:System.ComponentModel.Composition.Primitives.Export.Metadata"/> property to an empty, read-only 
1911                <see cref="T:System.Collections.Generic.IDictionary`2"/>.
1912            </param>
1913            <param name="exportedObjectGetter">
1914                A <see cref="T:System.Func`1"/> that is called to create the exported object of the 
1915                <see cref="T:System.ComponentModel.Composition.Export`1"/>. This allows the creation of the object to be delayed 
1916                until <see cref="M:System.ComponentModel.Composition.Export`1.GetExportedObject"/> is called.
1917            </param>
1918            <exception cref="T:System.ArgumentNullException">
1919                <paramref name="exportedObjectGetter"/> is <see langword="null"/>.
1920            </exception>
1921            <remarks>
1922                <para>
1923                    The <see cref="P:System.ComponentModel.Composition.Primitives.ExportDefinition.ContractName"/> property of <see cref="P:System.ComponentModel.Composition.Primitives.Export.Definition"/> 
1924                    is the result of calling <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on 
1925                    <typeparamref name="T"/>.
1926                </para>
1927            </remarks>
1928        </member>
1929        <member name="M:System.ComponentModel.Composition.Export`2.#ctor(System.String,System.Collections.Generic.IDictionary{System.String,System.Object},System.Func{`0})">
1930            <summary>
1931                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Export`2"/> class 
1932                with the specified contract name, metadata and exported object getter.
1933            </summary>
1934            <param name="contractName">
1935                A <see cref="T:System.String"/> containing the contract name of the 
1936                <see cref="T:System.ComponentModel.Composition.Export`2"/>.
1937            </param>
1938            <param name="metadata">
1939                An <see cref="T:System.Collections.Generic.IDictionary`2"/> containing the metadata of the 
1940                <see cref="T:System.ComponentModel.Composition.Export`2"/>; or <see langword="null"/> to set the 
1941                <see cref="P:System.ComponentModel.Composition.Primitives.Export.Metadata"/> property to an empty, read-only 
1942                <see cref="T:System.Collections.Generic.IDictionary`2"/>.
1943            </param>
1944            <param name="exportedObjectGetter">
1945                A <see cref="T:System.Func`1"/> that is called to create the exported object of the 
1946                <see cref="T:System.ComponentModel.Composition.Export`2"/>. This allows the creation of the object to be delayed 
1947                until <see cref="M:System.ComponentModel.Composition.Export`1.GetExportedObject"/> is called.
1948            </param>
1949            <exception cref="T:System.ArgumentNullException">
1950                <paramref name="contractName"/> is <see langword="null"/>.
1951                <para>
1952                    -or-
1953                </para>
1954                <paramref name="exportedObjectGetter"/> is <see langword="null"/>.
1955            </exception>
1956            <exception cref="T:System.ArgumentException">
1957                <paramref name="contractName"/> is an empty string ("").
1958            </exception>
1959        </member>
1960        <member name="M:System.ComponentModel.Composition.Export`2.#ctor(System.ComponentModel.Composition.Primitives.ExportDefinition,System.Func{`0})">
1961            <summary>
1962                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Export`2"/> class 
1963                with the specified export definition and exported object getter.
1964            </summary>
1965            <param name="definition">
1966                An <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> that describes the contract that the 
1967                <see cref="T:System.ComponentModel.Composition.Export`2"/> satisfies.
1968            </param>
1969            <param name="exportedObjectGetter">
1970                A <see cref="T:System.Func`1"/> that is called to create the exported object of the 
1971                <see cref="T:System.ComponentModel.Composition.Export`2"/>. This allows the creation of the object to be delayed 
1972                until <see cref="M:System.ComponentModel.Composition.Export`1.GetExportedObject"/> is called.
1973            </param>
1974            <exception cref="T:System.ArgumentNullException">
1975                <paramref name="definition"/> is <see langword="null"/>.
1976                <para>
1977                    -or-
1978                </para>
1979                <paramref name="exportedObjectGetter"/> is <see langword="null"/>.
1980            </exception>
1981        </member>
1982        <member name="P:System.ComponentModel.Composition.Export`2.MetadataView">
1983            <summary>
1984                Gets the metadata view for the export.
1985            </summary>
1986            <value>
1987                A <typeparamref name="TMetadataView"/> representing the strongly-typed metadata view 
1988                for the <see cref="T:System.ComponentModel.Composition.Export`2"/>.
1989            </value>
1990            <exception cref="T:System.ComponentModel.Composition.ContractMismatchException">
1991                The <see cref="P:System.ComponentModel.Composition.Primitives.Export.Metadata"/> property cannot be converted to <typeparamref name="TMetadataView"/>.
1992            </exception>
1993            <exception cref="T:System.NotImplementedException">
1994                The <see cref="P:System.ComponentModel.Composition.Primitives.Export.Definition"/> property was not overridden by a derived class.
1995            </exception>
1996            <exception cref="T:System.InvalidOperationException">
1997                <typeparamref name="TMetadataView"/> is not a valid metadata view type.
1998            </exception>
1999            <remarks>
2000                <para>
2001                    This property represents a strong-typed view over the <see cref="P:System.ComponentModel.Composition.Primitives.Export.Metadata"/> property.
2002                </para>
2003            </remarks>
2004        </member>
2005        <member name="T:System.ComponentModel.Composition.Hosting.ExportProvider">
2006            <summary>
2007                Defines the <see langword="abstract"/> base class for export providers, which provide
2008                methods for retrieving <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects.
2009            </summary>
2010        </member>
2011        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.#ctor">
2012            <summary>
2013                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> class.
2014            </summary>
2015        </member>
2016        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports(System.ComponentModel.Composition.Primitives.ImportDefinition)">
2017            <summary>
2018                Returns all exports that match the conditions of the specified import.
2019            </summary>
2020            <param name="definition">
2021                The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the 
2022                <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects to get.
2023            </param>
2024            <result>
2025                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match 
2026                the conditions defined by <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, if found; otherwise, an 
2027                empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
2028            </result>
2029            <exception cref="T:System.ArgumentNullException">
2030                <paramref name="definition"/> is <see langword="null"/>.
2031            </exception>
2032            <exception cref="T:System.ComponentModel.Composition.CardinalityMismatchException">
2033                <para>
2034                    <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/> is <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne"/> and 
2035                    there are zero <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match the conditions of the specified 
2036                    <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
2037                </para>
2038                -or-
2039                <para>
2040                    <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/> is <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ZeroOrOne"/> or 
2041                    <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne"/> and there are more than one <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> 
2042                    objects that match the conditions of the specified <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
2043                </para>
2044            </exception>
2045        </member>
2046        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.TryGetExports(System.ComponentModel.Composition.Primitives.ImportDefinition,System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Primitives.Export}@)">
2047            <summary>
2048                Returns all exports that match the conditions of the specified import.
2049            </summary>
2050            <param name="definition">
2051                The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the 
2052                <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects to get.
2053            </param>
2054            <param name="exports">
2055                When this method returns, contains an <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> 
2056                objects that match the conditions defined by <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, if found; 
2057                otherwise, an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
2058            </param>
2059            <returns>
2060                <see langword="true"/> if <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/> is 
2061                <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ZeroOrOne"/> or <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ZeroOrMore"/> and 
2062                there are zero <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match the conditions of the specified 
2063                <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>. <see langword="true"/> if 
2064                <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/> is <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ZeroOrOne"/> or 
2065                <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne"/> and there is exactly one <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> 
2066                that matches the conditions of the specified <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>; otherwise, 
2067                <see langword="false"/>.
2068            </returns>
2069            <exception cref="T:System.ArgumentNullException">
2070                <paramref name="definition"/> is <see langword="null"/>.
2071            </exception>
2072        </member>
2073        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExportsCore(System.ComponentModel.Composition.Primitives.ImportDefinition)">
2074            <summary>
2075                Returns all exports that match the constraint defined by the specified definition.
2076            </summary>
2077            <param name="definition">
2078                The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the 
2079                <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects to return.
2080            </param>
2081            <result>
2082                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match 
2083                the conditions defined by <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, if found; otherwise, an 
2084                empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
2085            </result>
2086            <remarks>
2087                <note type="inheritinfo">
2088                    Overriders of this method should not treat cardinality-related mismatches 
2089                    as errors, and should not throw exceptions in those cases. For instance,
2090                    if <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/> is <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne"/> 
2091                    and there are zero <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match the conditions of the 
2092                    specified <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, an <see cref="T:System.Collections.Generic.IEnumerable`1"/> should be returned.
2093                </note>
2094            </remarks>
2095        </member>
2096        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.OnExportsChanged(System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs)">
2097            <summary>
2098                Raises the <see cref="E:System.ComponentModel.Composition.Hosting.ExportProvider.ExportsChanged"/> event.
2099            </summary>
2100            <param name="e">
2101                An <see cref="T:System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs"/> containing the data for the event.
2102            </param>
2103        </member>
2104        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExport``1">
2105            <summary>
2106                Returns the export with the contract name derived from the specified type parameter, 
2107                throwing an exception if there is not exactly one matching export.
2108            </summary>
2109            <typeparam name="T">
2110                The type of the <see cref="T:System.ComponentModel.Composition.Export`1"/> object to return. The contract name is also 
2111                derived from this type parameter.
2112            </typeparam>
2113            <returns>
2114                The <see cref="T:System.ComponentModel.Composition.Export`1"/> object with the contract name derived from 
2115                <typeparamref name="T"/>.
2116            </returns>
2117            <remarks>
2118                <para>
2119                    The returned <see cref="T:System.ComponentModel.Composition.Export`1"/> object is an instance of 
2120                    <see cref="T:System.ComponentModel.Composition.Export`2"/> underneath, where 
2121                    <c>TMetadataView</c>
2122                    is <see cref="T:System.Collections.Generic.IDictionary`2"/> and where <c>TKey</c> 
2123                    is <see cref="T:System.String"/> and <c>TValue</c> is <see cref="T:System.Object"/>.
2124                </para>
2125                <para>
2126                    The contract name is the result of calling 
2127                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
2128                </para>
2129                <para>
2130                    The contract name is compared using a case-sensitive, non-linguistic comparison 
2131                    using <see cref="P:System.StringComparer.Ordinal"/>.
2132                </para>
2133            </remarks>
2134            <exception cref="T:System.ComponentModel.Composition.CardinalityMismatchException">
2135                <para>
2136                    There are zero <see cref="T:System.ComponentModel.Composition.Export`1"/> objects with the contract name derived 
2137                    from <typeparamref name="T"/> in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
2138                </para>
2139                -or-
2140                <para>
2141                    There are more than one <see cref="T:System.ComponentModel.Composition.Export`1"/> objects with the contract name 
2142                    derived from <typeparamref name="T"/> in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
2143                </para>
2144            </exception>
2145            <exception cref="T:System.ObjectDisposedException">
2146                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2147            </exception>
2148        </member>
2149        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExport``1(System.String)">
2150            <summary>
2151                Returns the export with the specified contract name, throwing an exception if there 
2152                is not exactly one matching export.
2153            </summary>
2154            <typeparam name="T">
2155                The type of the <see cref="T:System.ComponentModel.Composition.Export`1"/> object to return.
2156            </typeparam>
2157            <param name="contractName">
2158                A <see cref="T:System.String"/> containing the contract name of the <see cref="T:System.ComponentModel.Composition.Export`1"/> 
2159                object to return; or <see langword="null"/> or an empty string ("") to use the 
2160                default contract name.
2161            </param>
2162            <returns>
2163                The <see cref="T:System.ComponentModel.Composition.Export`1"/> object with the specified contract name.
2164            </returns>
2165            <remarks>
2166                <para>
2167                    The returned <see cref="T:System.ComponentModel.Composition.Export`1"/> object is an instance of 
2168                    <see cref="T:System.ComponentModel.Composition.Export`2"/> underneath, where 
2169                    <c>TMetadataView</c>
2170                    is <see cref="T:System.Collections.Generic.IDictionary`2"/> and where <c>TKey</c> 
2171                    is <see cref="T:System.String"/> and <c>TValue</c> is <see cref="T:System.Object"/>.
2172                </para>
2173                <para>
2174                    The contract name is the result of calling 
2175                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
2176                </para>
2177                <para>
2178                    The default contract name is compared using a case-sensitive, non-linguistic 
2179                    comparison using <see cref="P:System.StringComparer.Ordinal"/>.
2180                </para>
2181            </remarks>
2182            <exception cref="T:System.ComponentModel.Composition.CardinalityMismatchException">
2183                <para>
2184                    There are zero <see cref="T:System.ComponentModel.Composition.Export`1"/> objects with the specified contract name 
2185                    in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
2186                </para>
2187                -or-
2188                <para>
2189                    There are more than one <see cref="T:System.ComponentModel.Composition.Export`1"/> objects with the specified contract
2190                    name in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
2191                </para>
2192            </exception>
2193            <exception cref="T:System.ObjectDisposedException">
2194                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2195            </exception>
2196        </member>
2197        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExport``1(System.Linq.Expressions.Expression{System.Func{System.ComponentModel.Composition.Primitives.ExportDefinition,System.Boolean}})">
2198            <summary>
2199                Returns the export that matches the conditions defined by the specified constraint, 
2200                throwing an exception if there is not exactly one matching export.
2201            </summary>
2202            <typeparam name="T">
2203                The type of the <see cref="T:System.ComponentModel.Composition.Export`1"/> object to return.
2204            </typeparam>
2205            <param name="constraint">
2206                A <see cref="T:System.Linq.Expressions.Expression`1"/> containing a <see cref="T:System.Func`2"/> 
2207                that defines the conditions of the <see cref="T:System.ComponentModel.Composition.Export`1"/> object to return or 
2208                <see langword="null"/> to use the default contract name as the constraint.
2209            </param>
2210            <returns>
2211                The <see cref="T:System.ComponentModel.Composition.Export`1"/> object that matches the conditions defined by 
2212                <paramref name="constraint"/>.
2213            </returns>
2214            <remarks>
2215                <para>
2216                    The returned <see cref="T:System.ComponentModel.Composition.Export`1"/> object is an instance of 
2217                    <see cref="T:System.ComponentModel.Composition.Export`2"/> underneath, where 
2218                    <c>TMetadataView</c>
2219                    is <see cref="T:System.Collections.Generic.IDictionary`2"/> and where <c>TKey</c> 
2220                    is <see cref="T:System.String"/> and <c>TValue</c> is <see cref="T:System.Object"/>.
2221                </para>
2222                <para>
2223                    The contract name is the result of calling 
2224                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
2225                </para>
2226                <para>
2227                    The default contract name is compared using a case-sensitive, non-linguistic 
2228                    comparison using <see cref="P:System.StringComparer.Ordinal"/>.
2229                </para>
2230            </remarks>
2231            <exception cref="T:System.ComponentModel.Composition.CardinalityMismatchException">
2232                <para>
2233                    There are zero <see cref="T:System.ComponentModel.Composition.Export`1"/> objects that match the conditions 
2234                    defined by <paramref name="constraint"/> in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
2235                </para>
2236                -or-
2237                <para>
2238                    There are more than one <see cref="T:System.ComponentModel.Composition.Export`1"/> objects that match the conditions 
2239                    defined by <paramref name="constraint"/> in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
2240                </para>
2241            </exception>
2242            <exception cref="T:System.ObjectDisposedException">
2243                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2244            </exception>
2245        </member>
2246        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExport``2">
2247            <summary>
2248                Returns the export with the contract name derived from the specified type parameter, 
2249                throwing an exception if there is not exactly one matching export.
2250            </summary>
2251            <typeparam name="T">
2252                The type of the <see cref="T:System.ComponentModel.Composition.Export`2"/> object to return. The 
2253                contract name is also derived from this type parameter.
2254            </typeparam>
2255            <typeparam name="TMetadataView">
2256                The type of the metadata view of the <see cref="T:System.ComponentModel.Composition.Export`2"/> object
2257                to return.
2258            </typeparam>
2259            <returns>
2260                The <see cref="T:System.ComponentModel.Composition.Export`2"/> object with the contract name derived 
2261                from <typeparamref name="T"/>.
2262            </returns>
2263            <remarks>
2264                <para>
2265                    The contract name is the result of calling 
2266                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
2267                </para>
2268                <para>
2269                    The contract name is compared using a case-sensitive, non-linguistic comparison 
2270                    using <see cref="P:System.StringComparer.Ordinal"/>.
2271                </para>
2272            </remarks>
2273            <exception cref="T:System.ComponentModel.Composition.CardinalityMismatchException">
2274                <para>
2275                    There are zero <see cref="T:System.ComponentModel.Composition.Export`2"/> objects with the contract 
2276                    name derived from <typeparamref name="T"/> in the 
2277                    <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
2278                </para>
2279                -or-
2280                <para>
2281                    There are more than one <see cref="T:System.ComponentModel.Composition.Export`2"/> objects with the 
2282                    contract name derived from <typeparamref name="T"/> in the 
2283                    <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
2284                </para>
2285            </exception>
2286            <exception cref="T:System.InvalidOperationException">
2287                <typeparamref name="TMetadataView"/> is not a valid metadata view type.
2288            </exception>
2289            <exception cref="T:System.ObjectDisposedException">
2290                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2291            </exception>
2292        </member>
2293        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExport``2(System.String)">
2294            <summary>
2295                Returns the export with the specified contract name, throwing an exception if there 
2296                is not exactly one matching export.
2297            </summary>
2298            <typeparam name="T">
2299                The type of the <see cref="T:System.ComponentModel.Composition.Export`2"/> object to return.
2300            </typeparam>
2301            <typeparam name="TMetadataView">
2302                The type of the metadata view of the <see cref="T:System.ComponentModel.Composition.Export`2"/> object
2303                to return.
2304            </typeparam>
2305            <param name="contractName">
2306                A <see cref="T:System.String"/> containing the contract name of the 
2307                <see cref="T:System.ComponentModel.Composition.Export`2"/> object to return; or <see langword="null"/> 
2308                or an empty string ("") to use the default contract name.
2309            </param>
2310            <returns>
2311                The <see cref="T:System.ComponentModel.Composition.Export`2"/> object with the specified contract name.
2312            </returns>
2313            <remarks>
2314                <para>
2315                    The default contract name is the result of calling 
2316                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
2317                </para>
2318                <para>
2319                    The contract name is compared using a case-sensitive, non-linguistic comparison 
2320                    using <see cref="P:System.StringComparer.Ordinal"/>.
2321                </para>
2322            </remarks>
2323            <exception cref="T:System.ComponentModel.Composition.CardinalityMismatchException">
2324                <para>
2325                    There are zero <see cref="T:System.ComponentModel.Composition.Export`2"/> objects with the 
2326                    specified contract name in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
2327                </para>
2328                -or-
2329                <para>
2330                    There are more than one <see cref="T:System.ComponentModel.Composition.Export`2"/> objects with the 
2331                    specified contract name in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
2332                </para>
2333            </exception>
2334            <exception cref="T:System.InvalidOperationException">
2335                <typeparamref name="TMetadataView"/> is not a valid metadata view type.
2336            </exception>
2337            <exception cref="T:System.ObjectDisposedException">
2338                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2339            </exception>
2340        </member>
2341        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExport``2(System.Linq.Expressions.Expression{System.Func{System.ComponentModel.Composition.Primitives.ExportDefinition,System.Boolean}})">
2342            <summary>
2343                Returns the export that matches the conditions defined by the specified constraint,
2344                throwing an exception if there is not exactly one matching export.
2345            </summary>
2346            <typeparam name="T">
2347                The type of the <see cref="T:System.ComponentModel.Composition.Export`2"/> object to return.
2348            </typeparam>
2349            <typeparam name="TMetadataView">
2350                The type of the metadata view of the <see cref="T:System.ComponentModel.Composition.Export`2"/> object
2351                to return.
2352            </typeparam>
2353            <param name="constraint">
2354                A <see cref="T:System.Linq.Expressions.Expression`1"/> containing a <see cref="T:System.Func`2"/> 
2355                that defines the conditions of the <see cref="T:System.ComponentModel.Composition.Export`2"/> object to 
2356                return or <see langword="null"/> to use the default contract name as the constraint.
2357            </param>
2358            <returns>
2359                The <see cref="T:System.ComponentModel.Composition.Export`2"/> object that matches the conditions 
2360                defined by <paramref name="constraint"/>.
2361            </returns>
2362            <remarks>
2363                <para>
2364                    The default contract name is the result of calling 
2365                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
2366                </para>
2367                <para>
2368                    The contract name is compared using a case-sensitive, non-linguistic comparison 
2369                    using <see cref="P:System.StringComparer.Ordinal"/>.
2370                </para>
2371            </remarks>
2372            <exception cref="T:System.ComponentModel.Composition.CardinalityMismatchException">
2373                <para>
2374                    There are zero <see cref="T:System.ComponentModel.Composition.Export`2"/> objects that match the 
2375                    conditions defined by <paramref name="constraint"/> in the 
2376                    <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
2377                </para>
2378                -or-
2379                <para>
2380                    There are more than one <see cref="T:System.ComponentModel.Composition.Export`2"/> objects that match 
2381                    the conditions defined by <paramref name="constraint"/> in the 
2382                    <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
2383                </para>
2384            </exception>
2385            <exception cref="T:System.InvalidOperationException">
2386                <typeparamref name="TMetadataView"/> is not a valid metadata view type.
2387            </exception>
2388            <exception cref="T:System.ObjectDisposedException">
2389                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2390            </exception>
2391        </member>
2392        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports(System.Type,System.Type,System.Linq.Expressions.Expression{System.Func{System.ComponentModel.Composition.Primitives.ExportDefinition,System.Boolean}})">
2393            <summary>
2394                Returns the exports that match the conditions defined by the specified constraint.
2395            </summary>
2396            <param name="type">
2397                The <see cref="T:System.Type"/> of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects to return.
2398            </param>
2399            <param name="metadataViewType">
2400                The <see cref="T:System.Type"/> of the metadata view of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects to
2401                return.
2402            </param>
2403            <param name="constraint">
2404                A <see cref="T:System.Linq.Expressions.Expression`1"/> containing a <see cref="T:System.Func`2"/> 
2405                that defines the conditions of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects to return or
2406                <see langword="null"/> to use the default contract name as the constraint.
2407            </param>
2408            <returns>
2409                An <see cref="T:System.ComponentModel.Composition.ExportCollection"/> containing the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that 
2410                match the conditions defined by the specified constraint, if found; otherwise, an 
2411                empty <see cref="T:System.ComponentModel.Composition.ExportCollection"/>.
2412            </returns>
2413            <remarks>
2414                <para>
2415                    The returned <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects are instances of 
2416                    <see cref="T:System.ComponentModel.Composition.Export`2"/> underneath, where <c>T</c>
2417                    is <paramref name="type"/> and <c>TMetadataView</c> is 
2418                    <paramref name="metadataViewType"/>.
2419                </para>
2420                <para>
2421                    The default contract name is the result of calling 
2422                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <paramref name="type"/>.
2423                </para>
2424                <para>
2425                    The contract name is compared using a case-sensitive, non-linguistic comparison 
2426                    using <see cref="P:System.StringComparer.Ordinal"/>.
2427                </para>
2428            </remarks>
2429            <exception cref="T:System.ArgumentNullException">
2430                <paramref name="type"/> is <see langword="null"/>.
2431            </exception>
2432            <exception cref="T:System.InvalidOperationException">
2433                <paramref name="metadataViewType"/> is not a valid metadata view type.
2434            </exception>
2435            <exception cref="T:System.ObjectDisposedException">
2436                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2437            </exception>
2438        </member>
2439        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports``1">
2440            <summary>
2441                Returns the exports with the contract name derived from the specified type parameter.
2442            </summary>
2443            <typeparam name="T">
2444                The type of the <see cref="T:System.ComponentModel.Composition.Export`1"/> objects to return. The contract name is also 
2445                derived from this type parameter.
2446            </typeparam>
2447            <returns>
2448                An <see cref="T:System.ComponentModel.Composition.ExportCollection`1"/> containing the <see cref="T:System.ComponentModel.Composition.Export`1"/> objects
2449                with the contract name derived from <typeparamref name="T"/>, if found; otherwise,
2450                an empty <see cref="T:System.ComponentModel.Composition.ExportCollection`1"/>.
2451            </returns>
2452            <remarks>
2453                <para>
2454                    The returned <see cref="T:System.ComponentModel.Composition.Export`1"/> objects are instances of 
2455                    <see cref="T:System.ComponentModel.Composition.Export`2"/> underneath, where 
2456                    <c>TMetadataView</c>
2457                    is <see cref="T:System.Collections.Generic.IDictionary`2"/> and where <c>TKey</c> 
2458                    is <see cref="T:System.String"/> and <c>TValue</c> is <see cref="T:System.Object"/>.
2459                </para>
2460                <para>
2461                    The contract name is the result of calling 
2462                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
2463                </para>
2464                <para>
2465                    The contract name is compared using a case-sensitive, non-linguistic comparison 
2466                    using <see cref="P:System.StringComparer.Ordinal"/>.
2467                </para>
2468            </remarks>
2469            <exception cref="T:System.ObjectDisposedException">
2470                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2471            </exception>
2472        </member>
2473        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports``1(System.String)">
2474            <summary>
2475                Returns the exports with the specified contract name.
2476            </summary>
2477            <typeparam name="T">
2478                The type of the <see cref="T:System.ComponentModel.Composition.Export`1"/> objects to return.
2479            </typeparam>
2480            <param name="contractName">
2481                A <see cref="T:System.String"/> containing the contract name of the <see cref="T:System.ComponentModel.Composition.Export`1"/> 
2482                objects to return; or <see langword="null"/> or an empty string ("") to use the 
2483                default contract name.
2484            </param>
2485            <returns>
2486                An <see cref="T:System.ComponentModel.Composition.ExportCollection`1"/> containing the <see cref="T:System.ComponentModel.Composition.Export`1"/> objects
2487                with the specified contract name, if found; otherwise, an empty 
2488                <see cref="T:System.ComponentModel.Composition.ExportCollection`1"/>.
2489            </returns>
2490            <remarks>
2491                <para>
2492                    The returned <see cref="T:System.ComponentModel.Composition.Export`1"/> objects are instances of 
2493                    <see cref="T:System.ComponentModel.Composition.Export`2"/> underneath, where 
2494                    <c>TMetadataView</c>
2495                    is <see cref="T:System.Collections.Generic.IDictionary`2"/> and where <c>TKey</c> 
2496                    is <see cref="T:System.String"/> and <c>TValue</c> is <see cref="T:System.Object"/>.
2497                </para>
2498                <para>
2499                    The default contract name is the result of calling 
2500                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
2501                </para>
2502                <para>
2503                    The contract name is compared using a case-sensitive, non-linguistic comparison 
2504                    using <see cref="P:System.StringComparer.Ordinal"/>.
2505                </para>
2506            </remarks>
2507            <exception cref="T:System.ObjectDisposedException">
2508                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2509            </exception>
2510        </member>
2511        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports``1(System.Linq.Expressions.Expression{System.Func{System.ComponentModel.Composition.Primitives.ExportDefinition,System.Boolean}})">
2512            <summary>
2513                Returns the exports that match the conditions defined by the specified constraint.
2514            </summary>
2515            <typeparam name="T">
2516                The type of the <see cref="T:System.ComponentModel.Composition.Export`1"/> objects to return.
2517            </typeparam>
2518            <param name="constraint">
2519                A <see cref="T:System.Linq.Expressions.Expression`1"/> containing a <see cref="T:System.Func`2"/> 
2520                that defines the conditions of the <see cref="T:System.ComponentModel.Composition.Export`1"/> objects to 
2521                return or <see langword="null"/> to use the default contract name as the constraint.
2522            </param>
2523            <returns>
2524                An <see cref="T:System.ComponentModel.Composition.ExportCollection`1"/> containing the <see cref="T:System.ComponentModel.Composition.Export`1"/> objects
2525                that match the conditions defined by the specified constraint, if found; otherwise, 
2526                an empty <see cref="T:System.ComponentModel.Composition.ExportCollection`1"/>.
2527            </returns>
2528            <remarks>
2529                <para>
2530                    The returned <see cref="T:System.ComponentModel.Composition.Export`1"/> objects are instances of 
2531                    <see cref="T:System.ComponentModel.Composition.Export`2"/> underneath, where 
2532                    <c>TMetadataView</c>
2533                    is <see cref="T:System.Collections.Generic.IDictionary`2"/> and where <c>TKey</c> 
2534                    is <see cref="T:System.String"/> and <c>TValue</c> is <see cref="T:System.Object"/>.
2535                </para>
2536                <para>
2537                    The default contract name is the result of calling 
2538                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
2539                </para>
2540                <para>
2541                    The contract name is compared using a case-sensitive, non-linguistic comparison 
2542                    using <see cref="P:System.StringComparer.Ordinal"/>.
2543                </para>
2544            </remarks>
2545            <exception cref="T:System.ObjectDisposedException">
2546                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2547            </exception>
2548        </member>
2549        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports``2">
2550            <summary>
2551                Returns the exports with the contract name derived from the specified type parameter.
2552            </summary>
2553            <typeparam name="T">
2554                The type of the <see cref="T:System.ComponentModel.Composition.Export`2"/> objects to return. The 
2555                contract name is also derived from this type parameter.
2556            </typeparam>
2557            <typeparam name="TMetadataView">
2558                The type of the metadata view of the <see cref="T:System.ComponentModel.Composition.Export`2"/> objects
2559                to return.
2560            </typeparam>
2561            <returns>
2562                An <see cref="T:System.ComponentModel.Composition.ExportCollection`2"/> containing the 
2563                <see cref="T:System.ComponentModel.Composition.Export`2"/> objects with the contract name derived from 
2564                <typeparamref name="T"/>, if found; otherwise, an empty 
2565                <see cref="T:System.ComponentModel.Composition.ExportCollection`2"/>.
2566            </returns>
2567            <remarks>
2568                <para>
2569                    The contract name is the result of calling 
2570                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
2571                </para>
2572                <para>
2573                    The contract name is compared using a case-sensitive, non-linguistic comparison 
2574                    using <see cref="P:System.StringComparer.Ordinal"/>.
2575                </para>
2576            </remarks>
2577            <exception cref="T:System.InvalidOperationException">
2578                <typeparamref name="TMetadataView"/> is not a valid metadata view type.
2579            </exception>
2580            <exception cref="T:System.ObjectDisposedException">
2581                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2582            </exception>
2583        </member>
2584        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports``2(System.String)">
2585            <summary>
2586                Returns the exports with the specified contract name.
2587            </summary>
2588            <typeparam name="T">
2589                The type of the <see cref="T:System.ComponentModel.Composition.Export`2"/> objects to return. The 
2590                contract name is also derived from this type parameter.
2591            </typeparam>
2592            <typeparam name="TMetadataView">
2593                The type of the metadata view of the <see cref="T:System.ComponentModel.Composition.Export`2"/> objects
2594                to return.
2595            </typeparam>
2596            <param name="contractName">
2597                A <see cref="T:System.String"/> containing the contract name of the 
2598                <see cref="T:System.ComponentModel.Composition.Export`2"/> objects to return; or <see langword="null"/> 
2599                or an empty string ("") to use the default contract name.
2600            </param>
2601            <returns>
2602                An <see cref="T:System.ComponentModel.Composition.ExportCollection`2"/> containing the 
2603                <see cref="T:System.ComponentModel.Composition.Export`2"/> objects with the specified contract name if 
2604                found; otherwise, an empty <see cref="T:System.ComponentModel.Composition.ExportCollection`2"/>.
2605            </returns>
2606            <remarks>
2607                <para>
2608                    The default contract name is the result of calling 
2609                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
2610                </para>
2611                <para>
2612                    The contract name is compared using a case-sensitive, non-linguistic comparison 
2613                    using <see cref="P:System.StringComparer.Ordinal"/>.
2614                </para>
2615            </remarks>
2616            <exception cref="T:System.InvalidOperationException">
2617                <typeparamref name="TMetadataView"/> is not a valid metadata view type.
2618            </exception>
2619            <exception cref="T:System.ObjectDisposedException">
2620                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2621            </exception>
2622        </member>
2623        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports``2(System.Linq.Expressions.Expression{System.Func{System.ComponentModel.Composition.Primitives.ExportDefinition,System.Boolean}})">
2624            <summary>
2625                Returns the exports that match the conditions defined by the specified constraint.
2626            </summary>
2627            <typeparam name="T">
2628                The type of the <see cref="T:System.ComponentModel.Composition.Export`2"/> objects to return.
2629            </typeparam>
2630            <typeparam name="TMetadataView">
2631                The type of the metadata view of the <see cref="T:System.ComponentModel.Composition.Export`2"/> objects
2632                to return.
2633            </typeparam>
2634            <param name="constraint">
2635                A <see cref="T:System.Linq.Expressions.Expression`1"/> containing a <see cref="T:System.Func`2"/> 
2636                that defines the conditions of the <see cref="T:System.ComponentModel.Composition.Export`2"/> objects to 
2637                return or <see langword="null"/> to use the default contract name as the constraint.
2638            </param>
2639            <returns>
2640                An <see cref="T:System.ComponentModel.Composition.ExportCollection`2"/> containing the 
2641                <see cref="T:System.ComponentModel.Composition.Export`2"/> objects that match the conditions defined by 
2642                the specified constraint, if found; otherwise, an empty 
2643                <see cref="T:System.ComponentModel.Composition.ExportCollection`2"/>.
2644            </returns>
2645            <remarks>
2646                <para>
2647                    The default contract name is the result of calling 
2648                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
2649                </para>
2650                <para>
2651                    The contract name is compared using a case-sensitive, non-linguistic comparison 
2652                    using <see cref="P:System.StringComparer.Ordinal"/>.
2653                </para>
2654            </remarks>
2655            <exception cref="T:System.InvalidOperationException">
2656                <typeparamref name="TMetadataView"/> is not a valid metadata view type.
2657            </exception>
2658            <exception cref="T:System.ObjectDisposedException">
2659                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2660            </exception>
2661        </member>
2662        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExportedObject``1">
2663            <summary>
2664                Returns the exported object with the contract name derived from the specified type 
2665                parameter, throwing an exception if there is not exactly one matching exported object.
2666            </summary>
2667            <typeparam name="T">
2668                The type of the exported object to return. The contract name is also 
2669                derived from this type parameter.
2670            </typeparam>
2671            <returns>
2672                The exported <see cref="T:System.Object"/> with the contract name derived from 
2673                <typeparamref name="T"/>.
2674            </returns>
2675            <remarks>
2676                <para>
2677                    The contract name is the result of calling 
2678                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
2679                </para>
2680                <para>
2681                    The contract name is compared using a case-sensitive, non-linguistic comparison 
2682                    using <see cref="P:System.StringComparer.Ordinal"/>.
2683                </para>
2684            </remarks>
2685            <exception cref="T:System.ComponentModel.Composition.ContractMismatchException">
2686                The underlying exported object cannot be cast to <typeparamref name="T"/>.
2687            </exception>
2688            <exception cref="T:System.ComponentModel.Composition.CardinalityMismatchException">
2689                <para>
2690                    There are zero exported objects with the contract name derived from 
2691                    <typeparamref name="T"/> in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
2692                </para>
2693                -or-
2694                <para>
2695                    There are more than one exported objects with the contract name derived from
2696                    <typeparamref name="T"/> in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
2697                </para>
2698            </exception>
2699            <exception cref="T:System.ObjectDisposedException">
2700                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2701            </exception>
2702            <exception cref="T:System.ComponentModel.Composition.CompositionException">
2703                An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will 
2704                contain a collection of errors that occurred.
2705            </exception>
2706        </member>
2707        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExportedObject``1(System.String)">
2708            <summary>
2709                Returns the exported object with the specified contract name, throwing an exception 
2710                if there is not exactly one matching exported object.
2711            </summary>
2712            <typeparam name="T">
2713                The type of the exported object to return.
2714            </typeparam>
2715            <param name="contractName">
2716                A <see cref="T:System.String"/> containing the contract name of the exported object to return,
2717                or <see langword="null"/> or an empty string ("") to use the default contract name.
2718            </param>
2719            <returns>
2720                The exported <see cref="T:System.Object"/> with the specified contract name.
2721            </returns>
2722            <remarks>
2723                <para>
2724                    The default contract name is the result of calling 
2725                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
2726                </para>
2727                <para>
2728                    The contract name is compared using a case-sensitive, non-linguistic comparison 
2729                    using <see cref="P:System.StringComparer.Ordinal"/>.
2730                </para>
2731            </remarks>
2732            <exception cref="T:System.ComponentModel.Composition.ContractMismatchException">
2733                The underlying exported object cannot be cast to <typeparamref name="T"/>.
2734            </exception>
2735            <exception cref="T:System.ComponentModel.Composition.CardinalityMismatchException">
2736                <para>
2737                    There are zero exported objects with the specified contract name in the 
2738                    <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
2739                </para>
2740                -or-
2741                <para>
2742                    There are more than one exported objects with the specified contract name in the
2743                    <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
2744                </para>
2745            </exception>
2746            <exception cref="T:System.ObjectDisposedException">
2747                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2748            </exception>
2749            <exception cref="T:System.ComponentModel.Composition.CompositionException">
2750                An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will 
2751                contain a collection of errors that occurred.
2752            </exception>
2753        </member>
2754        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExportedObjectOrDefault``1">
2755            <summary>
2756                Returns the exported object with the contract name derived from the specified type 
2757                parameter, throwing an exception if there is more than one matching exported object.
2758            </summary>
2759            <typeparam name="T">
2760                The type of the exported object to return. The contract name is also 
2761                derived from this type parameter.
2762            </typeparam>
2763            <returns>
2764                The exported <see cref="T:System.Object"/> with the contract name derived from 
2765                <typeparamref name="T"/>, if found; otherwise, the default value for
2766                <typeparamref name="T"/>.
2767            </returns>
2768            <remarks>
2769                <para>
2770                    If the exported object is not found, then this method returns the appropriate 
2771                    default value for <typeparamref name="T"/>; for example, 0 (zero) for integer 
2772                    types, <see langword="false"/> for Boolean types, and <see langword="null"/> 
2773                    for reference types.
2774                </para>
2775                <para>
2776                    The contract name is the result of calling 
2777                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
2778                </para>
2779                <para>
2780                    The contract name is compared using a case-sensitive, non-linguistic comparison 
2781                    using <see cref="P:System.StringComparer.Ordinal"/>.
2782                </para>
2783            </remarks>
2784            <exception cref="T:System.ComponentModel.Composition.ContractMismatchException">
2785                The underlying exported object cannot be cast to <typeparamref name="T"/>.
2786            </exception>
2787            <exception cref="T:System.ComponentModel.Composition.CardinalityMismatchException">
2788                <para>
2789                    There are more than one exported objects with the contract name derived from
2790                    <typeparamref name="T"/> in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
2791                </para>
2792            </exception>
2793            <exception cref="T:System.ObjectDisposedException">
2794                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2795            </exception>
2796            <exception cref="T:System.ComponentModel.Composition.CompositionException">
2797                An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will 
2798                contain a collection of errors that occurred.
2799            </exception>
2800        </member>
2801        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExportedObjectOrDefault``1(System.String)">
2802            <summary>
2803                Returns the exported object with the specified contract name, throwing an exception 
2804                if there is more than one matching exported object.
2805            </summary>
2806            <typeparam name="T">
2807                The type of the exported object to return.
2808            </typeparam>
2809            <param name="contractName">
2810                A <see cref="T:System.String"/> containing the contract name of the exported object to return,
2811                or <see langword="null"/> or an empty string ("") to use the default contract name.
2812            </param>
2813            <returns>
2814                The exported <see cref="T:System.Object"/> with the specified contract name, if found; 
2815                otherwise, the default value for <typeparamref name="T"/>.
2816            </returns>
2817            <remarks>
2818                <para>
2819                    If the exported object is not found, then this method returns the appropriate 
2820                    default value for <typeparamref name="T"/>; for example, 0 (zero) for integer 
2821                    types, <see langword="false"/> for Boolean types, and <see langword="null"/> 
2822                    for reference types.
2823                </para>
2824                <para>
2825                    The default contract name is the result of calling 
2826                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
2827                </para>
2828                <para>
2829                    The contract name is compared using a case-sensitive, non-linguistic comparison 
2830                    using <see cref="P:System.StringComparer.Ordinal"/>.
2831                </para>
2832            </remarks>
2833            <exception cref="T:System.ComponentModel.Composition.ContractMismatchException">
2834                The underlying exported object cannot be cast to <typeparamref name="T"/>.
2835            </exception>
2836            <exception cref="T:System.ComponentModel.Composition.CardinalityMismatchException">
2837                There are more than one exported objects with the specified contract name in the
2838                <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
2839            </exception>
2840            <exception cref="T:System.ObjectDisposedException">
2841                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2842            </exception>
2843            <exception cref="T:System.ComponentModel.Composition.CompositionException">
2844                An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will 
2845                contain a collection of errors that occurred.
2846            </exception>
2847        </member>
2848        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExportedObjects``1">
2849            <summary>
2850                Returns the exported objects with the contract name derived from the specified type 
2851                parameter.
2852            </summary>
2853            <typeparam name="T">
2854                The type of the exported object to return. The contract name is also 
2855                derived from this type parameter.
2856            </typeparam>
2857            <returns>
2858                An <see cref="T:System.Collections.ObjectModel.Collection`1"/> containing the exported objects with the contract name 
2859                derived from the specified type parameter, if found; otherwise, an empty 
2860                <see cref="T:System.Collections.ObjectModel.Collection`1"/>.
2861            </returns>
2862            <remarks>
2863                <para>
2864                    The contract name is the result of calling 
2865                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
2866                </para>
2867                <para>
2868                    The contract name is compared using a case-sensitive, non-linguistic comparison 
2869                    using <see cref="P:System.StringComparer.Ordinal"/>.
2870                </para>
2871            </remarks>
2872            <exception cref="T:System.ComponentModel.Composition.ContractMismatchException">
2873                One or more of the underlying exported objects cannot be cast to 
2874                <typeparamref name="T"/>.
2875            </exception>
2876            <exception cref="T:System.ObjectDisposedException">
2877                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2878            </exception>
2879            <exception cref="T:System.ComponentModel.Composition.CompositionException">
2880                An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will 
2881                contain a collection of errors that occurred.
2882            </exception>
2883        </member>
2884        <member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExportedObjects``1(System.String)">
2885            <summary>
2886                Returns the exported objects with the specified contract name.
2887            </summary>
2888            <typeparam name="T">
2889                The type of the exported object to return.
2890            </typeparam>
2891            <param name="contractName">
2892                A <see cref="T:System.String"/> containing the contract name of the exported objects to 
2893                return; or <see langword="null"/> or an empty string ("") to use the default 
2894                contract name.
2895            </param>
2896            <returns>
2897                An <see cref="T:System.Collections.ObjectModel.Collection`1"/> containing the exported objects with the specified 
2898                contract name, if found; otherwise, an empty <see cref="T:System.Collections.ObjectModel.Collection`1"/>.
2899            </returns>
2900            <remarks>
2901                <para>
2902                    The default contract name is the result of calling 
2903                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
2904                </para>
2905                <para>
2906                    The contract name is compared using a case-sensitive, non-linguistic comparison 
2907                    using <see cref="P:System.StringComparer.Ordinal"/>.
2908                </para>
2909            </remarks>
2910            <exception cref="T:System.ComponentModel.Composition.ContractMismatchException">
2911                One or more of the underlying exported objects cannot be cast to 
2912                <typeparamref name="T"/>.
2913            </exception>
2914            <exception cref="T:System.ObjectDisposedException">
2915                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
2916            </exception>
2917            <exception cref="T:System.ComponentModel.Composition.CompositionException">
2918                An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will 
2919                contain a collection of errors that occurred.
2920            </exception>
2921        </member>
2922        <member name="E:System.ComponentModel.Composition.Hosting.ExportProvider.ExportsChanged">
2923            <summary>
2924                Occurs when the exports in the <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> change.
2925            </summary>
2926        </member>
2927        <member name="M:System.ComponentModel.Composition.Hosting.AdaptingExportProvider.#ctor">
2928            <summary>
2929                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.AdaptingExportProvider"/> class.
2930            </summary>
2931        </member>
2932        <member name="M:System.ComponentModel.Composition.Hosting.AdaptingExportProvider.Dispose">
2933            <summary>
2934            Releases unmanaged and - optionally - managed resources
2935            </summary>
2936        </member>
2937        <member name="M:System.ComponentModel.Composition.Hosting.AdaptingExportProvider.Dispose(System.Boolean)">
2938            <summary>
2939            Releases unmanaged and - optionally - managed resources
2940            </summary>
2941            <param name="disposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
2942        </member>
2943        <member name="M:System.ComponentModel.Composition.Hosting.AdaptingExportProvider.OnExportsChanged(System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs)">
2944            <summary>
2945            Raises the <see cref="E:System.ComponentModel.Composition.Hosting.AggregateExportProvider.ExportsChanged"/> event.
2946            </summary>
2947            <param name="e">The <see cref="T:System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs"/> instance containing the event data.</param>
2948        </member>
2949        <member name="M:System.ComponentModel.Composition.Hosting.AdaptingExportProvider.GetExportsCore(System.ComponentModel.Composition.Primitives.ImportDefinition)">
2950            <summary>
2951            Returns all exports that match the conditions of the specified import.
2952            </summary>
2953            <param name="definition">The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the
2954            <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> to get.</param>
2955            <returns></returns>
2956            <result>
2957            An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match
2958            the conditions defined by <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, if found; otherwise, an
2959            empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
2960            </result>
2961            <remarks>
2962            	<note type="inheritinfo">
2963            The implementers should not treat the cardinality-related mismatches as errors, and are not
2964            expected to throw exceptions in those cases.
2965            For instance, if the import requests exactly one export and the provider has no matching exports or more than one,
2966            it should return an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
2967            </note>
2968            </remarks>
2969        </member>
2970        <member name="P:System.ComponentModel.Composition.Hosting.AdaptingExportProvider.SourceProvider">
2971            <summary>
2972                Gets the export provider which provides the provider access to additional
2973                exports.
2974            </summary>
2975            <value>
2976                The <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> which provides the 
2977                <see cref="T:System.ComponentModel.Composition.Hosting.AdaptingExportProvider"/> access to additional
2978                <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects. The default is <see langword="null"/>.
2979            </value>
2980            <exception cref="T:System.ArgumentNullException">
2981                <paramref name="value"/> is <see langword="null"/>.
2982            </exception>
2983            <exception cref="T:System.InvalidOperationException">
2984                This property has already been set.
2985                <para>
2986                    -or-
2987                </para>
2988                The methods on the <see cref="T:System.ComponentModel.Composition.Hosting.AdaptingExportProvider"/> 
2989                have already been accessed.
2990            </exception>
2991            <exception cref="T:System.ObjectDisposedException">
2992                The <see cref="T:System.ComponentModel.Composition.Hosting.AdaptingExportProvider"/> has been disposed of.
2993            </exception>
2994            <remarks>
2995                This property must be set before accessing any methods on the 
2996                <see cref="T:System.ComponentModel.Composition.Hosting.AdaptingExportProvider"/>.
2997            </remarks>
2998        </member>
2999        <member name="E:System.ComponentModel.Composition.Hosting.AdaptingExportProvider.ExportsChanged">
3000            <summary>
3001                Occurs when the exports in the <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> change.
3002            </summary>
3003            <remarks>
3004                The <see cref="E:System.ComponentModel.Composition.Hosting.AdaptingExportProvider.ExportsChanged"/> event passes an <see cref="T:System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs"/>
3005                which provides a list of contract names for the exports that have changed. An export
3006                is considered to have changed if it has been added, removed, or updated in the 
3007                <see cref="T:System.ComponentModel.Composition.Hosting.AdaptingExportProvider"/>.
3008            </remarks>
3009        </member>
3010        <member name="T:System.ComponentModel.Composition.Hosting.AggregateCatalog">
3011            <summary>
3012                A mutable collection of ComposablePartCatalogs.  The events are called back using the
3013                synchronization context created when the instance is constructed.
3014            </summary>
3015            <remarks>
3016                This type is thread safe.
3017            </remarks>
3018        </member>
3019        <member name="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog">
3020            <summary>
3021                Defines the <see langword="abstract"/> base class for composable part catalogs, which produce
3022                and return <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects.
3023            </summary>
3024            <remarks>
3025                This type is thread safe.
3026            </remarks>
3027        </member>
3028        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePartCatalog.#ctor">
3029            <summary>
3030                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> class.
3031            </summary>
3032        </member>
3033        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePartCatalog.GetExports(System.ComponentModel.Composition.Primitives.ImportDefinition)">
3034            <summary>
3035                Returns the export definitions that match the constraint defined by the specified definition.
3036            </summary>
3037            <param name="definition">
3038                The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the 
3039                <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects to return.
3040            </param>
3041            <returns>
3042                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.TempTuple`2"/> containing the 
3043                <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects and their associated 
3044                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> for objects that match the constraint defined 
3045                by <paramref name="definition"/>.
3046            </returns>
3047            <exception cref="T:System.ArgumentNullException">
3048                <paramref name="definition"/> is <see langword="null"/>.
3049            </exception>
3050            <exception cref="T:System.ObjectDisposedException">
3051                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> has been disposed of.
3052            </exception>
3053            <remarks>
3054                <note type="inheritinfo">
3055                    Overriders of this property should never return <see langword="null"/>, if no 
3056                    <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> match the conditions defined by 
3057                    <paramref name="definition"/>, return an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
3058                </note>
3059            </remarks>
3060        </member>
3061        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePartCatalog.Dispose">
3062            <summary>
3063                Releases the unmanaged resources used by the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> and 
3064                optionally releases the managed resources.
3065            </summary>
3066            <param name="disposing">
3067                <see langword="true"/> to release both managed and unmanaged resources; 
3068                <see langword="false"/> to release only unmanaged resources.
3069            </param>
3070        </member>
3071        <member name="P:System.ComponentModel.Composition.Primitives.ComposablePartCatalog.Parts">
3072            <summary>
3073                Gets the part definitions of the catalog.
3074            </summary>
3075            <value>
3076                A <see cref="T:System.Linq.IQueryable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects of the 
3077                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/>.
3078            </value>
3079            <exception cref="T:System.ObjectDisposedException">
3080                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> has been disposed of.
3081            </exception>
3082            <remarks>
3083                <note type="inheritinfo">
3084                    Overriders of this property should never return <see langword="null"/>.
3085                </note>
3086            </remarks>
3087        </member>
3088        <member name="T:System.ComponentModel.Composition.Primitives.INotifyComposablePartCatalogChanged">
3089            <summary>
3090                Notifications when a ComposablePartCatalog changes.
3091            </summary>
3092        </member>
3093        <member name="M:System.ComponentModel.Composition.Hosting.AggregateCatalog.#ctor">
3094            <summary>
3095                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/> class.
3096            </summary>
3097        </member>
3098        <member name="M:System.ComponentModel.Composition.Hosting.AggregateCatalog.#ctor(System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Primitives.ComposablePartCatalog})">
3099            <summary>
3100                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/> class
3101                with the specified catalogs.
3102            </summary>
3103            <param name="catalogs">
3104                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> objects to add
3105                to the <see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/>; or <see langword="null"/> to 
3106                create an <see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/> that is empty.
3107            </param>
3108            <exception cref="T:System.ArgumentException">
3109                <paramref name="catalogs"/> contains an element that is <see langword="null"/>.
3110            </exception>
3111        </member>
3112        <member name="M:System.ComponentModel.Composition.Hosting.AggregateCatalog.GetExports(System.ComponentModel.Composition.Primitives.ImportDefinition)">
3113            <summary>
3114                Returns the export definitions that match the constraint defined by the specified definition.
3115            </summary>
3116            <param name="definition">
3117                The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the 
3118                <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects to return.
3119            </param>
3120            <returns>
3121                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.TempTuple`2"/> containing the 
3122                <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects and their associated 
3123                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> for objects that match the constraint defined 
3124                by <paramref name="definition"/>.
3125            </returns>
3126            <exception cref="T:System.ArgumentNullException">
3127                <paramref name="definition"/> is <see langword="null"/>.
3128            </exception>
3129            <exception cref="T:System.ObjectDisposedException">
3130                The <see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/> has been disposed of.
3131            </exception>
3132        </member>
3133        <member name="P:System.ComponentModel.Composition.Hosting.AggregateCatalog.Parts">
3134            <summary>
3135                Gets the part definitions of the catalog.
3136            </summary>
3137            <value>
3138                A <see cref="T:System.Linq.IQueryable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects of the 
3139                <see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/>.
3140            </value>
3141            <exception cref="T:System.ObjectDisposedException">
3142                The <see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/> has been disposed of.
3143            </exception>
3144        </member>
3145        <member name="P:System.ComponentModel.Composition.Hosting.AggregateCatalog.Catalogs">
3146            <summary>
3147                Gets the underlying catalogs of the catalog.
3148            </summary>
3149            <value>
3150                An <see cref="T:System.Collections.Generic.ICollection`1"/> of underlying <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> objects
3151                of the <see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/>.
3152            </value>
3153            <exception cref="T:System.ObjectDisposedException">
3154                The <see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/> has been disposed of.
3155            </exception>
3156        </member>
3157        <member name="E:System.ComponentModel.Composition.Hosting.AggregateCatalog.Changed">
3158            <summary>
3159            Notify when the contents of the Catalog has changed.
3160            </summary>
3161        </member>
3162        <member name="M:System.ComponentModel.Composition.Hosting.AggregateExportProvider.#ctor(System.ComponentModel.Composition.Hosting.ExportProvider[])">
3163            <summary>
3164            Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/> class.
3165            </summary>
3166            <param name="providers">The prioritized list of export providers.</param>
3167            <remarks>
3168                <para>
3169                    The <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/> will consult the providers in the order they have been specfied when 
3170                    executing <see cref="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports(System.ComponentModel.Composition.Primitives.ImportDefinition)"/>. 
3171                </para>
3172                <para>
3173                    The <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/> does not take ownership of the specified providers. 
3174                    That is, it will not try to dispose of any of them when it gets disposed.
3175                </para>
3176            </remarks>
3177        </member>
3178        <member name="M:System.ComponentModel.Composition.Hosting.AggregateExportProvider.#ctor(System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Hosting.ExportProvider})">
3179            <summary>
3180            Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/> class.
3181            </summary>
3182            <param name="providers">The prioritized list of export providers. The providers are consulted in order in which they are supplied.</param>
3183            <remarks>
3184                <para>
3185                    The <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/> will consult the providers in the order they have been specfied when 
3186                    executing <see cref="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports(System.ComponentModel.Composition.Primitives.ImportDefinition)"/>. 
3187                </para>
3188                <para>
3189                    The <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/> does not take ownership of the specified providers. 
3190                    That is, it will not try to dispose of any of them when it gets disposed.
3191                </para>
3192            </remarks>
3193        </member>
3194        <member name="M:System.ComponentModel.Composition.Hosting.AggregateExportProvider.Dispose">
3195            <summary>
3196            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
3197            </summary>
3198        </member>
3199        <member name="M:System.ComponentModel.Composition.Hosting.AggregateExportProvider.Dispose(System.Boolean)">
3200            <summary>
3201            Releases unmanaged and - optionally - managed resources
3202            </summary>
3203            <param name="disposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
3204        </member>
3205        <member name="M:System.ComponentModel.Composition.Hosting.AggregateExportProvider.OnExportsChanged(System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs)">
3206            <summary>
3207            Raises the <see cref="E:System.ComponentModel.Composition.Hosting.AggregateExportProvider.ExportsChanged"/> event.
3208            </summary>
3209            <param name="e">The <see cref="T:System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs"/> instance containing the event data.</param>
3210        </member>
3211        <member name="M:System.ComponentModel.Composition.Hosting.AggregateExportProvider.GetExportsCore(System.ComponentModel.Composition.Primitives.ImportDefinition)">
3212            <summary>
3213            Returns all exports that match the conditions of the specified import.
3214            </summary>
3215            <param name="definition">The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the
3216            <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> to get.</param>
3217            <returns></returns>
3218            <result>
3219            An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match
3220            the conditions defined by <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, if found; otherwise, an
3221            empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
3222            </result>
3223            <remarks>
3224            	<note type="inheritinfo">
3225            The implementers should not treat the cardinality-related mismatches as errors, and are not
3226            expected to throw exceptions in those cases.
3227            For instance, if the import requests exactly one export and the provider has no matching exports or more than one,
3228            it should return an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
3229            </note>
3230            </remarks>
3231        </member>
3232        <member name="P:System.ComponentModel.Composition.Hosting.AggregateExportProvider.Providers">
3233            <summary>
3234                Gets the export providers which the aggregate export provider aggregates.
3235            </summary>
3236            <value>
3237                A <see cref="T:System.Collections.ObjectModel.ReadOnlyCollection`1"/> of <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> objects
3238                which the <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/> aggregates.
3239            </value>
3240            <exception cref="T:System.ObjectDisposedException">
3241                The <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/> has been disposed of.
3242            </exception>
3243        </member>
3244        <member name="E:System.ComponentModel.Composition.Hosting.AggregateExportProvider.ExportsChanged">
3245            <summary>
3246                Occurs when the exports in the <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> change.
3247            </summary>
3248            <remarks>
3249                The <see cref="E:System.ComponentModel.Composition.Hosting.AggregateExportProvider.ExportsChanged"/> event passes an <see cref="T:System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs"/>
3250                which provides a list of contract names for the exports that have changed. An export
3251                is considered to have changed if it has been added, removed, or updated in the 
3252                <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/>.
3253            </remarks>
3254            <exception cref="T:System.ObjectDisposedException">
3255                The <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/> has been disposed of.
3256            </exception>
3257        </member>
3258        <member name="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog">
3259            <summary>
3260                An immutable ComposablePartCatalog created from a managed code assembly.
3261            </summary>
3262            <remarks>
3263                This type is thread safe.
3264            </remarks>
3265        </member>
3266        <member name="M:System.ComponentModel.Composition.Hosting.AssemblyCatalog.#ctor(System.String)">
3267            <summary>
3268                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/> class 
3269                with the specified code base.
3270            </summary>
3271            <param name="codeBase">
3272                A <see cref="T:System.String"/> containing the code base of the assembly containing the
3273                attributed <see cref="T:System.Type"/> objects to add to the <see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/>.
3274            </param>
3275            <exception cref="T:System.ArgumentNullException">
3276                <paramref name="codeBase"/> is <see langword="null"/>.
3277            </exception>
3278            <exception cref="T:System.ArgumentException">
3279                <paramref name="codeBase"/> is a zero-length string, contains only white space, 
3280                or contains one or more invalid characters as defined by <see cref="F:System.IO.Path.InvalidPathChars"/>.
3281            </exception>
3282            <exception cref="T:System.IO.PathTooLongException">
3283                The specified path, file name, or both exceed the system-defined maximum length. 
3284            </exception>
3285            <exception cref="T:System.Security.SecurityException">
3286                The caller does not have path discovery permission. 
3287            </exception>
3288            <exception cref="T:System.IO.FileNotFoundException">
3289                <paramref name="codeBase"/> is not found.
3290            </exception>
3291            <exception cref="T:System.IO.FileLoadException">
3292                <paramref name="codeBase"/> could not be loaded.
3293                <para>
3294                    -or-
3295                </para>
3296                <paramref name="codeBase"/> specified a directory.
3297            </exception>
3298            <exception cref="T:System.BadImageFormatException">
3299                <paramref name="codeBase"/> is not a valid assembly
3300                -or- 
3301                Version 2.0 or later of the common language runtime is currently loaded 
3302                and <paramref name="codeBase"/> was compiled with a later version. 
3303            </exception>
3304            <remarks>
3305                The assembly referenced by <paramref langword="codeBase"/> is loaded into the Load context.
3306            </remarks>
3307        </member>
3308        <member name="M:System.ComponentModel.Composition.Hosting.AssemblyCatalog.#ctor(System.Reflection.Assembly)">
3309            <summary>
3310                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/> class 
3311                with the specified assembly.
3312            </summary>
3313            <param name="assembly">
3314                The <see cref="P:System.ComponentModel.Composition.Hosting.AssemblyCatalog.Assembly"/> containing the attributed <see cref="T:System.Type"/> objects to 
3315                add to the <see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/>.
3316            </param>
3317            <exception cref="T:System.ArgumentException">
3318                <paramref name="assembly"/> is <see langword="null"/>.
3319                <para>
3320                    -or-
3321                </para>    
3322                <paramref name="assembly"/> was loaded in the reflection-only context.
3323            </exception>
3324        </member>
3325        <member name="M:System.ComponentModel.Composition.Hosting.AssemblyCatalog.GetExports(System.ComponentModel.Composition.Primitives.ImportDefinition)">
3326            <summary>
3327                Returns the export definitions that match the constraint defined by the specified definition.
3328            </summary>
3329            <param name="definition">
3330                The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the 
3331                <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects to return.
3332            </param>
3333            <returns>
3334                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.TempTuple`2"/> containing the 
3335                <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects and their associated 
3336                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> for objects that match the constraint defined 
3337                by <paramref name="definition"/>.
3338            </returns>
3339            <exception cref="T:System.ArgumentNullException">
3340                <paramref name="definition"/> is <see langword="null"/>.
3341            </exception>
3342            <exception cref="T:System.ObjectDisposedException">
3343                The <see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/> has been disposed of.
3344            </exception>
3345        </member>
3346        <member name="M:System.ComponentModel.Composition.Hosting.AssemblyCatalog.ToString">
3347            <summary>
3348                Returns a string representation of the assembly catalog.
3349            </summary>
3350            <returns>
3351                A <see cref="T:System.String"/> containing the string representation of the <see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/>.
3352            </returns>
3353        </member>
3354        <member name="P:System.ComponentModel.Composition.Hosting.AssemblyCatalog.Parts">
3355            <summary>
3356                Gets the part definitions of the assembly catalog.
3357            </summary>
3358            <value>
3359                A <see cref="T:System.Linq.IQueryable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects of the 
3360                <see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/>.
3361            </value>
3362            <exception cref="T:System.ObjectDisposedException">
3363                The <see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/> has been disposed of.
3364            </exception>
3365        </member>
3366        <member name="P:System.ComponentModel.Composition.Hosting.AssemblyCatalog.Assembly">
3367            <summary>
3368                Gets the assembly containing the attributed types contained within the assembly
3369                catalog.
3370            </summary>
3371            <value>
3372                The <see cref="P:System.ComponentModel.Composition.Hosting.AssemblyCatalog.Assembly"/> containing the attributed <see cref="T:System.Type"/> objects
3373                contained within the <see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/>.
3374            </value>
3375        </member>
3376        <member name="P:System.ComponentModel.Composition.Hosting.AssemblyCatalog.System#ComponentModel#Composition#Primitives#ICompositionElement#DisplayName">
3377            <summary>
3378                Gets the display name of the assembly catalog.
3379            </summary>
3380            <value>
3381                A <see cref="T:System.String"/> containing a human-readable display name of the <see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/>.
3382            </value>
3383        </member>
3384        <member name="P:System.ComponentModel.Composition.Hosting.AssemblyCatalog.System#ComponentModel#Composition#Primitives#ICompositionElement#Origin">
3385            <summary>
3386                Gets the composition element from which the assembly catalog originated.
3387            </summary>
3388            <value>
3389                This property always returns <see langword="null"/>.
3390            </value>
3391        </member>
3392        <member name="M:System.ComponentModel.Composition.Hosting.CatalogExportProvider.#ctor(System.ComponentModel.Composition.Primitives.ComposablePartCatalog)">
3393            <summary>
3394            Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/> class.
3395            </summary>
3396            <param name="catalog">
3397                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> that the <see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/>
3398                uses to produce <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects.
3399            </param>
3400            <exception cref="T:System.ArgumentNullException">
3401                <paramref name="catalog"/> is <see langword="null"/>.
3402            </exception>
3403        </member>
3404        <member name="M:System.ComponentModel.Composition.Hosting.CatalogExportProvider.Dispose">
3405            <summary>
3406            Releases unmanaged and - optionally - managed resources
3407            </summary>
3408        </member>
3409        <member name="M:System.ComponentModel.Composition.Hosting.CatalogExportProvider.Dispose(System.Boolean)">
3410            <summary>
3411            Releases unmanaged and - optionally - managed resources
3412            </summary>
3413            <param name="disposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
3414        </member>
3415        <member name="M:System.ComponentModel.Composition.Hosting.CatalogExportProvider.GetExportsCore(System.ComponentModel.Composition.Primitives.ImportDefinition)">
3416            <summary>
3417            Returns all exports that match the conditions of the specified import.
3418            </summary>
3419            <param name="definition">The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the
3420            <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> to get.</param>
3421            <returns></returns>
3422            <result>
3423            An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match
3424            the conditions defined by <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, if found; otherwise, an
3425            empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
3426            </result>
3427            <remarks>
3428            	<note type="inheritinfo">
3429            The implementers should not treat the cardinality-related mismatches as errors, and are not
3430            expected to throw exceptions in those cases.
3431            For instance, if the import requests exactly one export and the provider has no matching exports or more than one,
3432            it should return an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
3433            </note>
3434            </remarks>
3435        </member>
3436        <member name="M:System.ComponentModel.Composition.Hosting.CatalogExportProvider.OnExportsChanged(System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs)">
3437            <summary>
3438            Raises the <see cref="E:System.ComponentModel.Composition.Hosting.AggregateExportProvider.ExportsChanged"/> event.
3439            </summary>
3440            <param name="e">The <see cref="T:System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs"/> instance containing the event data.</param>
3441        </member>
3442        <member name="P:System.ComponentModel.Composition.Hosting.CatalogExportProvider.Catalog">
3443            <summary>
3444                Gets the composable part catalog that the provider users to 
3445                produce exports.
3446            </summary>
3447            <value>
3448                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> that the 
3449                <see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/>
3450                uses to produce <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects.
3451            </value>
3452            <exception cref="T:System.ObjectDisposedException">
3453                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
3454            </exception>
3455        </member>
3456        <member name="P:System.ComponentModel.Composition.Hosting.CatalogExportProvider.SourceProvider">
3457            <summary>
3458                Gets the export provider which provides the provider access to additional
3459                exports.
3460            </summary>
3461            <value>
3462                The <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> which provides the 
3463                <see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/> access to additional
3464                <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects. The default is <see langword="null"/>.
3465            </value>
3466            <exception cref="T:System.ArgumentNullException">
3467                <paramref name="value"/> is <see langword="null"/>.
3468            </exception>
3469            <exception cref="T:System.InvalidOperationException">
3470                This property has already been set.
3471                <para>
3472                    -or-
3473                </para>
3474                The methods on the <see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/> 
3475                have already been accessed.
3476            </exception>
3477            <exception cref="T:System.ObjectDisposedException">
3478                The <see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/> has been disposed of.
3479            </exception>
3480            <remarks>
3481                This property must be set before accessing any methods on the 
3482                <see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/>.
3483            </remarks>
3484        </member>
3485        <member name="E:System.ComponentModel.Composition.Hosting.CatalogExportProvider.ExportsChanged">
3486            <summary>
3487                Occurs when the exports in the <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> change.
3488            </summary>
3489            <remarks>
3490                The <see cref="E:System.ComponentModel.Composition.Hosting.CatalogExportProvider.ExportsChanged"/> event passes an <see cref="T:System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs"/>
3491                which provides a list of contract names for the exports that have changed. An export
3492                is considered to have changed if it has been added, removed, or updated in the 
3493                <see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/>.
3494            </remarks>
3495        </member>
3496        <member name="T:System.ComponentModel.Composition.Hosting.ComposablePartCatalogCollection">
3497            <summary>
3498                This class implements a threadsafe ICollection{T} of ComposablePartCatalog.
3499                It is exposed as an ICollection(ComposablePartCatalog)
3500                It is threadsafe, notifications are not marshalled using a SynchronizationContext.
3501                It is Disposable.
3502            </summary>
3503        </member>
3504        <member name="M:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider.#ctor">
3505            <summary>
3506            Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider"/> class.
3507            </summary>
3508        </member>
3509        <member name="M:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider.Dispose">
3510            <summary>
3511            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
3512            </summary>
3513        </member>
3514        <member name="M:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider.Dispose(System.Boolean)">
3515            <summary>
3516            Releases unmanaged and - optionally - managed resources
3517            </summary>
3518            <param name="disposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
3519        </member>
3520        <member name="M:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider.GetExportsCore(System.ComponentModel.Composition.Primitives.ImportDefinition)">
3521            <summary>
3522            Returns all exports that match the conditions of the specified import.
3523            </summary>
3524            <param name="definition">The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the
3525            <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> to get.</param>
3526            <returns></returns>
3527            <result>
3528            An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match
3529            the conditions defined by <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, if found; otherwise, an
3530            empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
3531            </result>
3532            <remarks>
3533            	<note type="inheritinfo">
3534            The implementers should not treat the cardinality-related mismatches as errors, and are not
3535            expected to throw exceptions in those cases.
3536            For instance, if the import requests exactly one export and the provider has no matching exports or more than one,
3537            it should return an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
3538            </note>
3539            </remarks>
3540        </member>
3541        <member name="M:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider.OnExportsChanged(System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs)">
3542            <summary>
3543            Raises the <see cref="E:ExportsChanged"/> event.
3544            </summary>
3545            <param name="e">The <see cref="T:System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs"/> instance containing the event data.</param>
3546        </member>
3547        <member name="P:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider.SourceProvider">
3548            <summary>
3549                Gets the export provider which provides the provider access to
3550                exports.
3551            </summary>
3552            <value>
3553                The <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> which provides the 
3554                <see cref="T:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider"/> access to <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects. 
3555                The default is <see langword="null"/>.
3556            </value>
3557            <exception cref="T:System.ArgumentNullException">
3558                <paramref name="value"/> is <see langword="null"/>.
3559            </exception>
3560            <exception cref="T:System.InvalidOperationException">
3561                This property has already been set.
3562                <para>
3563                    -or-
3564                </para>
3565                The methods on the <see cref="T:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider"/> 
3566                have already been accessed.
3567            </exception>
3568            <exception cref="T:System.ObjectDisposedException">
3569                The <see cref="T:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider"/> has been disposed of.
3570            </exception>
3571            <remarks>
3572                This property must be set before accessing any methods on the 
3573                <see cref="T:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider"/>.
3574            </remarks>
3575        </member>
3576        <member name="E:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider.ExportsChanged">
3577            <summary>
3578            Occurs when the exports in the <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> change.
3579            </summary>
3580            <remarks>
3581            The <see cref="E:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider.ExportsChanged"/> event passes an <see cref="T:System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs"/>
3582            which provides a list of contract names for the exports that have changed. An export
3583            is considered to have changed if it has been added, removed, or updated in the
3584            <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/>.
3585            </remarks>
3586        </member>
3587        <member name="M:System.ComponentModel.Composition.Hosting.CompositionBatch.#ctor">
3588            <summary>
3589            Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/> class.
3590            </summary>
3591        </member>
3592        <member name="M:System.ComponentModel.Composition.Hosting.CompositionBatch.#ctor(System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Primitives.ComposablePart},System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Primitives.ComposablePart})">
3593            <summary>
3594            Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/> class.
3595            </summary>
3596            <param name="partsToAdd">The parts to add.</param>
3597            <param name="partsToRemove">The parts to remove.</param>
3598            <exception cref="T:System.ArgumentNullException">
3599                <paramref name="partsToAdd"/> is <see langword="null"/>.
3600                <para>
3601                    -or-
3602                </para>
3603                <paramref name="partsToRemove"/> is <see langword="null"/>.
3604            </exception>
3605        </member>
3606        <member name="M:System.ComponentModel.Composition.Hosting.CompositionBatch.AddPart(System.ComponentModel.Composition.Primitives.ComposablePart)">
3607            <summary>
3608                Adds the specified part to the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>.
3609            </summary>
3610            <param name="part">
3611            The part.
3612            </param>
3613            <exception cref="T:System.ArgumentNullException">
3614                <paramref name="part"/> is <see langword="null"/>.
3615            </exception>
3616        </member>
3617        <member name="M:System.ComponentModel.Composition.Hosting.CompositionBatch.RemovePart(System.ComponentModel.Composition.Primitives.ComposablePart)">
3618            <summary>
3619                Removes the specified part from the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>.
3620            </summary>
3621            <param name="part">
3622            The part.
3623            </param>
3624            <exception cref="T:System.ArgumentNullException">
3625                <paramref name="part"/> is <see langword="null"/>.
3626            </exception>
3627        </member>
3628        <member name="M:System.ComponentModel.Composition.Hosting.CompositionBatch.AddExportedObject``1(``0)">
3629            <summary>
3630                Adds the specified object to the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>, exporting it under a contract 
3631                name derived from the specified type parameter.
3632            </summary>
3633            <typeparam name="T">
3634                The type of the object to add. The contract name is also derived from this type 
3635                parameter.
3636            </typeparam>
3637            <param name="exportedObject">
3638                The <see cref="T:System.Object"/> to add to the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>. This can
3639                be <see langword="null"/>.
3640            </param>
3641            <returns>
3642                A <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> that can be used remove the <see cref="T:System.Object"/>
3643                from the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>.
3644            </returns>
3645            <remarks>
3646                <para>
3647                    The contract name is the result of calling 
3648                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
3649                </para>
3650            </remarks>
3651        </member>
3652        <member name="M:System.ComponentModel.Composition.Hosting.CompositionBatch.AddExportedObject(System.String,System.Object)">
3653            <summary>
3654                Adds the specified object to the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>, exporting it under the specified 
3655                contract name.
3656            </summary>
3657            <param name="contractName">
3658                A <see cref="T:System.String"/> containing the contract name to export the <see cref="T:System.Object"/> 
3659                under.
3660            </param>
3661            <param name="exportedObject">
3662                The <see cref="T:System.Object"/> to add to the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>. This can
3663                be <see langword="null"/>.
3664            </param>
3665            <returns>
3666                A <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> that can be used remove the <see cref="T:System.Object"/>
3667                from the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>.
3668            </returns>
3669            <exception cref="T:System.ArgumentNullException">
3670                <paramref name="contractName"/> is <see langword="null"/>.
3671            </exception>
3672            <exception cref="T:System.ArgumentException">
3673                <paramref name="contractName"/> is an empty string ("").
3674            </exception>
3675            <remarks>
3676            </remarks>
3677            
3678        </member>
3679        <member name="M:System.ComponentModel.Composition.Hosting.CompositionBatch.AddExport(System.ComponentModel.Composition.Primitives.Export)">
3680            <summary>
3681                Adds the specified export to the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>.
3682            </summary>
3683            <param name="export">
3684                The <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> to add to the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>.
3685            </param>
3686            <returns>
3687                A <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> that can be used remove the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>
3688                from the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>.
3689            </returns>
3690            <exception cref="T:System.ArgumentNullException">
3691                <paramref name="export"/> is <see langword="null"/>.
3692            </exception>
3693            <remarks>
3694            </remarks>
3695        </member>
3696        <member name="M:System.ComponentModel.Composition.Hosting.CompositionBatch.AddPart(System.Object)">
3697            <summary>
3698                Adds the specified attributed composable part to the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>.
3699            </summary>
3700            <param name="attributedPart">
3701                An <see cref="T:System.Object"/> containing the attributed composable part to add to the 
3702                <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>.
3703            </param>
3704            <returns>
3705                A <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> that can be used remove the composable part from
3706                the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>.
3707            </returns>
3708            <exception cref="T:System.ArgumentNullException">
3709                <paramref name="attributedPart"/> is <see langword="null"/>.
3710            </exception>
3711            <remarks>
3712                <para>
3713                    This method is equivalent to passing <paramref name="attributedPart"/> to 
3714                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.CreateAttributedPart(System.Object)"/> and passing the created 
3715                    instance to <see cref="M:System.ComponentModel.Composition.Hosting.CompositionBatch.AddPart(System.ComponentModel.Composition.Primitives.ComposablePart)"/>. 
3716                </para>
3717            </remarks>
3718        </member>
3719        <member name="P:System.ComponentModel.Composition.Hosting.CompositionBatch.PartsToAdd">
3720            <summary>
3721            Returns the collection of parts that will be added.
3722            </summary>
3723            <value>The parts to be added.</value>
3724        </member>
3725        <member name="P:System.ComponentModel.Composition.Hosting.CompositionBatch.PartsToRemove">
3726            <summary>
3727            Returns the collection of parts that will be removed.
3728            </summary>
3729            <value>The parts to be removed.</value>
3730        </member>
3731        <member name="T:System.ComponentModel.Composition.ICompositionService">
3732            <summary>
3733                Provides methods for composing <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> objects.
3734            </summary>
3735        </member>
3736        <member name="M:System.ComponentModel.Composition.ICompositionService.SatisfyImports(System.ComponentModel.Composition.Primitives.ComposablePart,System.Boolean)">
3737            <summary>
3738                Sets the imports of the specified composable part and registering for it for 
3739                recomposition.
3740            </summary>
3741            <param name="part">
3742                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> to set the imports and register for recomposition.
3743            </param>
3744            <param name="registerForRecomposition">
3745                Indicates whether the part will keep recomposing after the initial import satisfaction
3746            </param>
3747            <exception cref="T:System.ArgumentNullException">
3748                <paramref name="part"/> is <see langword="null"/>.
3749            </exception>
3750            <exception cref="T:System.ComponentModel.Composition.CompositionException">
3751                An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
3752                contain a collection of errors that occurred.
3753            </exception>
3754            <exception cref="T:System.ObjectDisposedException">
3755                The <see cref="T:System.ComponentModel.Composition.ICompositionService"/> has been disposed of.
3756            </exception>
3757        </member>
3758        <member name="M:System.ComponentModel.Composition.ICompositionService.UnregisterForRecomposition(System.ComponentModel.Composition.Primitives.ComposablePart)">
3759            <summary>
3760                Unregisters the specified part from recomposition.
3761            </summary>
3762            <param name="part">
3763                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> to unregister from recomposition.
3764            </param>
3765            <exception cref="T:System.ArgumentNullException">
3766                <paramref name="part"/> is <see langword="null"/>.
3767            </exception>
3768            <exception cref="T:System.ObjectDisposedException">
3769                The <see cref="T:System.ComponentModel.Composition.ICompositionService"/> has been disposed of.
3770            </exception>
3771        </member>
3772        <member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.#ctor">
3773            <summary>
3774                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> class.
3775            </summary>
3776        </member>
3777        <member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.#ctor(System.ComponentModel.Composition.Hosting.ExportProvider[])">
3778            <summary>
3779                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> class 
3780                with the specified export providers.
3781            </summary>
3782            <param name="providers">
3783                A <see cref="T:System.Array"/> of <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> objects which provide 
3784                the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> access to <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects,
3785                or <see langword="null"/> to set <see cref="P:System.ComponentModel.Composition.Hosting.CompositionContainer.Providers"/> to an empty
3786                <see cref="T:System.Collections.ObjectModel.ReadOnlyCollection`1"/>.
3787            </param>
3788            <exception cref="T:System.ArgumentException">
3789                <paramref name="providers"/> contains an element that is <see langword="null"/>.
3790            </exception>
3791        </member>
3792        <member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.#ctor(System.ComponentModel.Composition.Primitives.ComposablePartCatalog,System.ComponentModel.Composition.Hosting.ExportProvider[])">
3793            <summary>
3794                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> class 
3795                with the specified catalog and export providers.
3796            </summary>
3797            <param name="providers">
3798                A <see cref="T:System.Array"/> of <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> objects which provide 
3799                the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> access to <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects,
3800                or <see langword="null"/> to set <see cref="P:System.ComponentModel.Composition.Hosting.CompositionContainer.Providers"/> to an empty 
3801                <see cref="T:System.Collections.ObjectModel.ReadOnlyCollection`1"/>.
3802            </param>
3803            <exception cref="T:System.ArgumentException">
3804                <paramref name="providers"/> contains an element that is <see langword="null"/>.
3805            </exception>
3806        </member>
3807        <member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.Dispose">
3808            <summary>
3809            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
3810            </summary>
3811        </member>
3812        <member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.Dispose(System.Boolean)">
3813            <summary>
3814            Releases unmanaged and - optionally - managed resources
3815            </summary>
3816            <param name="disposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
3817        </member>
3818        <member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.ReleaseExport(System.ComponentModel.Composition.Primitives.Export)">
3819            <summary>
3820                Releases the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> from the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>. Depending 
3821                on which <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> this <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> came from Release will cause
3822                different behavior to occur.
3823            
3824                For example the <see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/> will only release 
3825                an <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> if it comes from a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> that was constructed
3826                under a <see cref="F:System.ComponentModel.Composition.CreationPolicy.NonShared"/> context. Release in this context means walking
3827                the dependency chain of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>s and removing references and calling Dispose on 
3828                the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>s as needed. If the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> was constructed under
3829                a <see cref="F:System.ComponentModel.Composition.CreationPolicy.Shared"/> context the <see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/>
3830                will do nothing because it is a shared <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> and may be in use by other requestors. 
3831            </summary>
3832            <param name="export"><see cref="T:System.ComponentModel.Composition.Primitives.Export"/> that needs to be released.</param>
3833            <exception cref="T:System.ArgumentNullException">
3834                <paramref name="export"/> is <see langword="null"/>.
3835            </exception>
3836        </member>
3837        <member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.SatisfyImports(System.ComponentModel.Composition.Primitives.ComposablePart,System.Boolean)">
3838            <summary>
3839                Satisfies the imports of the specified composable part and registering for it for 
3840                recomposition if requested.
3841            </summary>
3842            <param name="part">
3843                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> to set the imports and register for recomposition.
3844            </param>
3845            <param name="registerForRecomposition">
3846                Indicates whether the part will keep recomposing after the initial import satisfaction
3847            </param>
3848            <exception cref="T:System.ArgumentNullException">
3849                <paramref name="part"/> is <see langword="null"/>.
3850            </exception>
3851            <exception cref="T:System.ComponentModel.Composition.CompositionException">
3852                An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
3853                contain a collection of errors that occurred.
3854            </exception>
3855            <exception cref="T:System.ObjectDisposedException">
3856                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
3857            </exception>
3858        </member>
3859        <member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.UnregisterForRecomposition(System.ComponentModel.Composition.Primitives.ComposablePart)">
3860            <summary>
3861                Unregisters the specified part from recomposition.
3862            </summary>
3863            <param name="part">
3864                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> to unregister from recomposition.
3865            </param>
3866            <exception cref="T:System.ArgumentNullException">
3867                <paramref name="part"/> is <see langword="null"/>.
3868            </exception>
3869            <exception cref="T:System.ObjectDisposedException">
3870                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
3871            </exception>
3872        </member>
3873        <member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.OnExportsChanged(System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs)">
3874            <summary>
3875                Raises the <see cref="E:System.ComponentModel.Composition.Hosting.CompositionContainer.ExportsChanged"/> event.
3876            </summary>
3877            <param name="e">
3878                An <see cref="T:System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs"/> containing the event data.
3879            </param>
3880        </member>
3881        <member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.GetExportsCore(System.ComponentModel.Composition.Primitives.ImportDefinition)">
3882            <summary>
3883            Returns all exports that match the conditions of the specified import.
3884            </summary>
3885            <param name="definition">The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the
3886            <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> to get.</param>
3887            <returns></returns>
3888            <result>
3889            An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match
3890            the conditions defined by <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, if found; otherwise, an
3891            empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
3892            </result>
3893            <remarks>
3894            	<note type="inheritinfo">
3895            The implementers should not treat the cardinality-related mismatches as errors, and are not
3896            expected to throw exceptions in those cases.
3897            For instance, if the import requests exactly one export and the provider has no matching exports or more than one,
3898            it should return an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
3899            </note>
3900            </remarks>
3901        </member>
3902        <member name="P:System.ComponentModel.Composition.Hosting.CompositionContainer.Catalog">
3903            <summary>
3904                Gets the catalog which provides the container access to exports produced
3905                from composable parts.
3906            </summary>
3907            <value>
3908                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> which provides the 
3909                <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> access to exports produced from
3910                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> objects. The default is <see langword="null"/>.
3911            </value>
3912            <exception cref="T:System.ObjectDisposedException">
3913                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
3914            </exception>
3915        </member>
3916        <member name="P:System.ComponentModel.Composition.Hosting.CompositionContainer.Providers">
3917            <summary>
3918                Gets the export providers which provide the container access to additional exports.
3919            </summary>
3920            <value>
3921                A <see cref="T:System.Collections.ObjectModel.ReadOnlyCollection`1"/> of <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> objects
3922                which provide the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> access to additional
3923                <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects. The default is an empty 
3924                <see cref="T:System.Collections.ObjectModel.ReadOnlyCollection`1"/>.
3925            </value>
3926            <exception cref="T:System.ObjectDisposedException">
3927                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
3928            </exception>
3929        </member>
3930        <member name="E:System.ComponentModel.Composition.Hosting.CompositionContainer.ExportsChanged">
3931            <summary>
3932                Occurs when the exports in the <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> change.
3933            </summary>
3934            <remarks>
3935                The <see cref="E:System.ComponentModel.Composition.Hosting.CompositionContainer.ExportsChanged"/> event passes an <see cref="T:System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs"/>
3936                which provides a list of contract names for the exports that have changed. An export
3937                is considered to have changed if it has been added, removed, or updated in the 
3938                <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/>.
3939            </remarks>
3940        </member>
3941        <member name="M:System.ComponentModel.Composition.Hosting.CompositionEngine.#ctor">
3942            <summary>
3943            Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionEngine"/> class.
3944            </summary>
3945        </member>
3946        <member name="M:System.ComponentModel.Composition.Hosting.CompositionEngine.Dispose">
3947            <summary>
3948            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
3949            </summary>
3950        </member>
3951        <member name="M:System.ComponentModel.Composition.Hosting.CompositionEngine.Dispose(System.Boolean)">
3952            <summary>
3953            Releases unmanaged and - optionally - managed resources
3954            </summary>
3955            <param name="disposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
3956        </member>
3957        <member name="M:System.ComponentModel.Composition.Hosting.CompositionEngine.SatisfyImports(System.ComponentModel.Composition.Primitives.ComposablePart,System.Boolean)">
3958            <summary>
3959                Satisfies the imports of the specified composable part and registering for it for 
3960                recomposition if requested.
3961            </summary>
3962            <param name="part">
3963                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> to set the imports and register for recomposition.
3964            </param>
3965            <param name="registerForRecomposition">
3966                Indicates whether the part will keep recomposing after the initial import satisfaction
3967            </param>
3968            <exception cref="T:System.ArgumentNullException">
3969                <paramref name="part"/> is <see langword="null"/>.
3970            </exception>
3971            <exception cref="T:System.ComponentModel.Composition.CompositionException">
3972                An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
3973                contain a collection of errors that occurred.
3974            </exception>
3975            <exception cref="T:System.InvalidOperationException">
3976                The <see cref="P:System.ComponentModel.Composition.Hosting.CompositionEngine.SourceProvider"/> property was not set.
3977            </exception>
3978            <exception cref="T:System.ObjectDisposedException">
3979                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionEngine"/> has been disposed of.
3980            </exception>
3981        </member>
3982        <member name="M:System.ComponentModel.Composition.Hosting.CompositionEngine.UnregisterForRecomposition(System.ComponentModel.Composition.Primitives.ComposablePart)">
3983            <summary>
3984                Unregisters the specified part from recomposition.
3985            </summary>
3986            <param name="part">
3987                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> to unregister from recomposition.
3988            </param>
3989            <exception cref="T:System.ArgumentNullException">
3990                <paramref name="part"/> is <see langword="null"/>.
3991            </exception>
3992            <exception cref="T:System.InvalidOperationException">
3993                The <see cref="P:System.ComponentModel.Composition.Hosting.CompositionEngine.SourceProvider"/> property was not set.
3994            </exception>
3995            <exception cref="T:System.ObjectDisposedException">
3996                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionEngine"/> has been disposed of.
3997            </exception>
3998        </member>
3999        <member name="P:System.ComponentModel.Composition.Hosting.CompositionEngine.SourceProvider">
4000            <summary>
4001                Gets the export provider which provides the composition engine access to
4002                exports.
4003            </summary>
4004            <value>
4005                The <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> which provides the 
4006                <see cref="T:System.ComponentModel.Composition.Hosting.CompositionEngine"/> access to <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects. 
4007                The default is <see langword="null"/>.
4008            </value>
4009            <exception cref="T:System.ArgumentNullException">
4010                <paramref name="value"/> is <see langword="null"/>.
4011            </exception>
4012            <exception cref="T:System.InvalidOperationException">
4013                This property has already been set.
4014                <para>
4015                    -or-
4016                </para>
4017                The methods on the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionEngine"/> 
4018                have already been accessed.
4019            </exception>
4020            <exception cref="T:System.ObjectDisposedException">
4021                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionEngine"/> has been disposed of.
4022            </exception>
4023            <remarks>
4024                This property must be set before accessing any methods on the 
4025                <see cref="T:System.ComponentModel.Composition.Hosting.CompositionEngine"/>.
4026            </remarks>
4027        </member>
4028        <member name="M:System.ComponentModel.Composition.Hosting.CompositionServices.IsAtMostOne(System.ComponentModel.Composition.Primitives.ImportCardinality)">
4029            <summary>
4030                Returns a value indicating whether cardinality is 
4031                <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ZeroOrOne"/> or 
4032                <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne"/>.
4033            </summary>
4034        </member>
4035        <member name="T:System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs">
4036            <summary>
4037                Provides data for the <see cref="E:System.ComponentModel.Composition.Hosting.CompositionContainer.ExportsChanged"/> event.
4038            </summary>
4039        </member>
4040        <member name="M:System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs.#ctor(System.Collections.Generic.IEnumerable{System.String})">
4041            <summary>
4042                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs"/> class with 
4043                the specified changed contract names.
4044            </summary>
4045            <param name="changedContractNames">
4046                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of strings representing the contract names of the 
4047                exports that have changed in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
4048            </param>
4049            <exception cref="T:System.ArgumentNullException">
4050                <paramref name="changedContractNames"/> is <see langword="null"/>.
4051            </exception>
4052        </member>
4053        <member name="P:System.ComponentModel.Composition.Hosting.ExportsChangedEventArgs.ChangedContractNames">
4054            <summary>
4055                Gets the contract names of the exports that have changed.
4056            </summary>
4057            <value>
4058                A <see cref="T:System.Collections.ObjectModel.ReadOnlyCollection`1"/> of strings representing the contract names of 
4059                the exports that have changed in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
4060            </value>
4061        </member>
4062        <member name="T:System.ComponentModel.Composition.Hosting.TypeCatalog">
4063            <summary>
4064                An immutable ComposablePartCatalog created from a type array or a list of managed types.  This class is threadsafe.
4065                It is Disposable.
4066            </summary>
4067        </member>
4068        <member name="M:System.ComponentModel.Composition.Hosting.TypeCatalog.#ctor(System.Type[])">
4069            <summary>
4070                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.TypeCatalog"/> class 
4071                with the specified types.
4072            </summary>
4073            <param name="types">
4074                An <see cref="T:System.Array"/> of attributed <see cref="T:System.Type"/> objects to add to the 
4075                <see cref="T:System.ComponentModel.Composition.Hosting.TypeCatalog"/>.
4076            </param>
4077            <exception cref="T:System.ArgumentNullException">
4078                <paramref name="types"/> is <see langword="null"/>.
4079            </exception>
4080            <exception cref="T:System.ArgumentException">
4081                <paramref name="types"/> contains an element that is <see langword="null"/>.
4082                <para>
4083                    -or-
4084                </para>
4085                <paramref name="types"/> contains an element that was loaded in the Reflection-only context.
4086            </exception>
4087        </member>
4088        <member name="M:System.ComponentModel.Composition.Hosting.TypeCatalog.#ctor(System.Collections.Generic.IEnumerable{System.Type})">
4089            <summary>
4090                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.TypeCatalog"/> class
4091                with the specified types.
4092            </summary>
4093            <param name="types">
4094                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of attributed <see cref="T:System.Type"/> objects to add 
4095                to the <see cref="T:System.ComponentModel.Composition.Hosting.TypeCatalog"/>.
4096            </param>
4097            <exception cref="T:System.ArgumentNullException">
4098                <paramref name="types"/> is <see langword="null"/>.
4099            </exception>
4100            <exception cref="T:System.ArgumentException">
4101                <paramref name="types"/> contains an element that is <see langword="null"/>.
4102                <para>
4103                    -or-
4104                </para>
4105                <paramref name="types"/> contains an element that was loaded in the reflection-only context.
4106            </exception>
4107        </member>
4108        <member name="M:System.ComponentModel.Composition.Hosting.TypeCatalog.GetExports(System.ComponentModel.Composition.Primitives.ImportDefinition)">
4109            <summary>
4110                Returns the export definitions that match the constraint defined by the specified definition.
4111            </summary>
4112            <param name="definition">
4113                The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the 
4114                <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects to return.
4115            </param>
4116            <returns>
4117                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.TempTuple`2"/> containing the 
4118                <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects and their associated 
4119                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> for objects that match the constraint defined 
4120                by <paramref name="definition"/>.
4121            </returns>
4122            <exception cref="T:System.ArgumentNullException">
4123                <paramref name="definition"/> is <see langword="null"/>.
4124            </exception>
4125            <exception cref="T:System.ObjectDisposedException">
4126                The <see cref="T:System.ComponentModel.Composition.Hosting.TypeCatalog"/> has been disposed of.
4127            </exception>
4128        </member>
4129        <member name="M:System.ComponentModel.Composition.Hosting.TypeCatalog.ToString">
4130            <summary>
4131                Returns a string representation of the type catalog.
4132            </summary>
4133            <returns>
4134                A <see cref="T:System.String"/> containing the string representation of the <see cref="T:System.ComponentModel.Composition.Hosting.TypeCatalog"/>.
4135            </returns>
4136        </member>
4137        <member name="P:System.ComponentModel.Composition.Hosting.TypeCatalog.Parts">
4138            <summary>
4139                Gets the part definitions of the catalog.
4140            </summary>
4141            <value>
4142                A <see cref="T:System.Linq.IQueryable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects of the 
4143                <see cref="T:System.ComponentModel.Composition.Hosting.TypeCatalog"/>.
4144            </value>
4145            <exception cref="T:System.ObjectDisposedException">
4146                The <see cref="T:System.ComponentModel.Composition.Hosting.TypeCatalog"/> has been disposed of.
4147            </exception>
4148        </member>
4149        <member name="P:System.ComponentModel.Composition.Hosting.TypeCatalog.System#ComponentModel#Composition#Primitives#ICompositionElement#DisplayName">
4150            <summary>
4151                Gets the display name of the type catalog.
4152            </summary>
4153            <value>
4154                A <see cref="T:System.String"/> containing a human-readable display name of the <see cref="T:System.ComponentModel.Composition.Hosting.TypeCatalog"/>.
4155            </value>
4156        </member>
4157        <member name="P:System.ComponentModel.Composition.Hosting.TypeCatalog.System#ComponentModel#Composition#Primitives#ICompositionElement#Origin">
4158            <summary>
4159                Gets the composition element from which the type catalog originated.
4160            </summary>
4161            <value>
4162                This property always returns <see langword="null"/>.
4163            </value>
4164        </member>
4165        <member name="T:System.ComponentModel.Composition.ImportingConstructorAttribute">
4166            <summary>
4167                Specifies that a constructor should be used when constructing an attributed part.
4168            </summary>
4169            <remarks>
4170                By default, only a default parameter-less constructor, if available, is used to 
4171                construct an attributed part. Use this attribute to indicate that a specific constructor 
4172                should be used.
4173            </remarks>
4174        </member>
4175        <member name="M:System.ComponentModel.Composition.ImportingConstructorAttribute.#ctor">
4176            <summary>
4177                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ImportingConstructorAttribute"/> class.
4178            </summary>
4179        </member>
4180        <member name="T:System.ComponentModel.Composition.MetadataViewAttribute">
4181            <summary>
4182                Specifies the provider for constructing Metadata Views
4183            </summary>
4184        </member>
4185        <member name="M:System.ComponentModel.Composition.MetadataViewAttribute.#ctor">
4186            <summary>
4187                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.MetadataViewAttribute"/> class.
4188            </summary>
4189        </member>
4190        <member name="P:System.ComponentModel.Composition.MetadataViewAttribute.Provider">
4191            <summary>
4192                Gets or sets a value indicating the Type which operates as a provider for 
4193                Strongly Typed Metadata Views.
4194            </summary>
4195            <value>
4196                The Type that is the provider for Strongly Typed Metadata Views
4197            </value>
4198        </member>
4199        <member name="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalogChangedEventArgs">
4200            <summary>
4201                Provides data for the <see cref="E:System.ComponentModel.Composition.Primitives.INotifyComposablePartCatalogChanged.Changed"/> event.
4202            </summary>
4203        </member>
4204        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePartCatalogChangedEventArgs.#ctor(System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Primitives.ComposablePartDefinition})">
4205            <summary>
4206                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalogChangedEventArgs"/> 
4207                class with the specified changed <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects.
4208            </summary>
4209            <param name="changedDefinitions">
4210                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects that 
4211                have changed in the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/>.
4212            </param>
4213            <exception cref="T:System.ArgumentNullException">
4214                <paramref name="changedParts"/> is <see langword="null"/>.
4215            </exception>
4216        </member>
4217        <member name="P:System.ComponentModel.Composition.Primitives.ComposablePartCatalogChangedEventArgs.ChangedDefinitions">
4218            <summary>
4219                Gets the identifiers of the parts that have changed.
4220            </summary>
4221            <value>
4222                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects that 
4223                have changed in the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/>.
4224            </value>
4225        </member>
4226        <member name="T:System.ComponentModel.Composition.Primitives.ComposablePartException">
4227            <summary>
4228                The exception that is thrown when an error occurs when calling methods on a
4229                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
4230            </summary>
4231        </member>
4232        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePartException.#ctor">
4233            <summary>
4234                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/> class.
4235            </summary>
4236        </member>
4237        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePartException.#ctor(System.String)">
4238            <summary>
4239                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/> class 
4240                with the specified error message.
4241            </summary>
4242            <param name="message">
4243                A <see cref="T:System.String"/> containing a message that describes the 
4244                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>; or <see langword="null"/> to set
4245                the <see cref="P:System.Exception.Message"/> property to its default value.
4246            </param>
4247            <param name="element">
4248                The <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/> that is the cause of the
4249                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>; or <see langword="null"/> to set
4250                the <see cref="P:System.ComponentModel.Composition.Primitives.ComposablePartException.Element"/> property to 
4251                <see langword="null"/>.
4252            </param>
4253        </member>
4254        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePartException.#ctor(System.String,System.ComponentModel.Composition.Primitives.ICompositionElement)">
4255            <summary>
4256                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/> class 
4257                with the specified error message and composition element that is the cause of
4258                the exception.
4259            </summary>
4260            <param name="message">
4261                A <see cref="T:System.String"/> containing a message that describes the 
4262                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>; or <see langword="null"/> to set
4263                the <see cref="P:System.Exception.Message"/> property to its default value.
4264            </param>
4265        </member>
4266        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePartException.#ctor(System.String,System.Exception)">
4267            <summary>
4268                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/> class 
4269                with the specified error message and exception that is the cause of the  
4270                exception.
4271            </summary>
4272            <param name="message">
4273                A <see cref="T:System.String"/> containing a message that describes the 
4274                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>; or <see langword="null"/> to set
4275                the <see cref="P:System.Exception.Message"/> property to its default value.
4276            </param>
4277            <param name="innerException">
4278                The <see cref="T:System.Exception"/> that is the underlying cause of the 
4279                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>; or <see langword="null"/> to set
4280                the <see cref="P:System.Exception.InnerException"/> property to <see langword="null"/>.
4281            </param>
4282        </member>
4283        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePartException.#ctor(System.String,System.ComponentModel.Composition.Primitives.ICompositionElement,System.Exception)">
4284            <summary>
4285                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/> class 
4286                with the specified error message, and composition element and exception that 
4287                are the cause of the exception.
4288            </summary>
4289            <param name="message">
4290                A <see cref="T:System.String"/> containing a message that describes the 
4291                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>; or <see langword="null"/> to set
4292                the <see cref="P:System.Exception.Message"/> property to its default value.
4293            </param>
4294            <param name="element">
4295                The <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/> that is the cause of the
4296                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>; or <see langword="null"/> to set
4297                the <see cref="P:System.ComponentModel.Composition.Primitives.ComposablePartException.Element"/> property to 
4298                <see langword="null"/>.
4299            </param>
4300            <param name="innerException">
4301                The <see cref="T:System.Exception"/> that is the underlying cause of the 
4302                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>; or <see langword="null"/> to set
4303                the <see cref="P:System.Exception.InnerException"/> property to <see langword="null"/>.
4304            </param>
4305        </member>
4306        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePartException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
4307            <summary>
4308                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/> class 
4309                with the specified serialization data.
4310            </summary>
4311            <param name="info">
4312                The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the 
4313                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>.
4314            </param>
4315            <param name="context">
4316                The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the 
4317                source or destination.
4318            </param>
4319            <exception cref="T:System.ArgumentNullException">
4320                <paramref name="info"/> is <see langword="null"/>.
4321            </exception>
4322            <exception cref="T:System.Runtime.Serialization.SerializationException">
4323                <paramref name="info"/> is missing a required value.
4324            </exception>
4325            <exception cref="T:System.InvalidCastException">
4326                <paramref name="info"/> contains a value that cannot be cast to the correct type.
4327            </exception>
4328        </member>
4329        <member name="M:System.ComponentModel.Composition.Primitives.ComposablePartException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
4330            <summary>
4331                Gets the serialization data of the exception.
4332            </summary>
4333            <param name="info">
4334                The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the 
4335                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>.
4336            </param>
4337            <param name="context">
4338                The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the 
4339                source or destination.
4340            </param>
4341            <exception cref="T:System.ArgumentNullException">
4342                <paramref name="info"/> is <see langword="null"/>.
4343            </exception>
4344        </member>
4345        <member name="P:System.ComponentModel.Composition.Primitives.ComposablePartException.Element">
4346            <summary>
4347                Gets the composition element that is the cause of the exception.
4348            </summary>
4349            <value>
4350                The <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/> that is the cause of the
4351                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>. The default is <see langword="null"/>.
4352            </value>
4353        </member>
4354        <member name="T:System.ComponentModel.Composition.Primitives.ImportCardinality">
4355            <summary>
4356                Indicates the cardinality of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects required by an <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
4357            </summary>
4358        </member>
4359        <member name="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ZeroOrOne">
4360            <summary>
4361                Zero or one <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects are required by an <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
4362            </summary>
4363        </member>
4364        <member name="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne">
4365            <summary>
4366                Exactly one <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> object is required by an <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
4367            </summary>
4368        </member>
4369        <member name="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ZeroOrMore">
4370            <summary>
4371                Zero or more <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects are required by an <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
4372            </summary>
4373        </member>
4374        <member name="T:System.ComponentModel.Composition.PartMetadataAttribute">
4375            <summary>
4376                Specifies metadata for a type to be used as a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> and
4377                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
4378            </summary>
4379        </member>
4380        <member name="M:System.ComponentModel.Composition.PartMetadataAttribute.#ctor(System.String,System.Object)">
4381            <summary>
4382                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.PartMetadataAttribute"/> with the 
4383                specified name and metadata value.
4384            </summary>
4385            <param name="name">
4386                A <see cref="T:System.String"/> containing the name of the metadata value; or 
4387                <see langword="null"/> to use an empty string ("").
4388            </param>
4389            <param name="value">
4390                An <see cref="T:System.Object"/> containing the metadata value. This can be 
4391                <see langword="null"/>.
4392            </param>
4393        </member>
4394        <member name="P:System.ComponentModel.Composition.PartMetadataAttribute.Name">
4395            <summary>
4396                Gets the name of the metadata value.
4397            </summary>
4398            <value>
4399                A <see cref="T:System.String"/> containing the name of the metadata value.
4400            </value>
4401        </member>
4402        <member name="P:System.ComponentModel.Composition.PartMetadataAttribute.Value">
4403            <summary>
4404                Gets the metadata value.
4405            </summary>
4406            <value>
4407                An <see cref="T:System.Object"/> containing the metadata value.
4408            </value>
4409        </member>
4410        <member name="T:System.ComponentModel.Composition.ExportCollection">
4411            <summary>
4412                Represents a collection of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects.
4413            </summary>
4414        </member>
4415        <member name="M:System.ComponentModel.Composition.ExportCollection.#ctor">
4416            <summary>
4417                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportCollection"/> class 
4418                that is empty.
4419            </summary>
4420        </member>
4421        <member name="M:System.ComponentModel.Composition.ExportCollection.#ctor(System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Primitives.Export})">
4422            <summary>
4423                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportCollection"/> class,
4424                adding the specified <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>
4425                objects to the collection.
4426            </summary>
4427            <param name="items">
4428                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects to add 
4429                to the <see cref="T:System.ComponentModel.Composition.ExportCollection"/>; or <see langword="null"/> to create 
4430                an <see cref="T:System.ComponentModel.Composition.ExportCollection"/> that is empty.
4431            </param>
4432        </member>
4433        <member name="T:System.ComponentModel.Composition.ImportRequiredMetadataAttribute">
4434            <summary>
4435                Specifies required metadata for a property, field or parameter marked with the
4436                <see cref="T:System.ComponentModel.Composition.ImportAttribute"/>.
4437            </summary>
4438            <remarks>
4439                By default, any export that matches the contract name of an import will be considered a
4440                match for that import. Use this attribute to indicate that an export should also contain 
4441                specific metadata to be considered a match.
4442            </remarks>
4443        </member>
4444        <member name="M:System.ComponentModel.Composition.ImportRequiredMetadataAttribute.#ctor(System.String)">
4445            <summary>
4446                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ImportRequiredMetadataAttribute"/> class
4447                with the specified required metadata name.
4448            </summary>
4449            <param name="name">
4450                A <see cref="T:System.String"/> containing the name of the required metadata value, or 
4451                <see langword="null"/> to use an empty string ("").
4452            </param>
4453        </member>
4454        <member name="P:System.ComponentModel.Composition.ImportRequiredMetadataAttribute.Name">
4455            <summary>
4456                Gets the name of the required metadata value.
4457            </summary>
4458            <value>
4459                A <see cref="T:System.String"/> containing the name of the required metadata value.
4460            </value>
4461        </member>
4462        <member name="T:System.ComponentModel.Composition.CompositionException">
4463            <summary>
4464                The exception that is thrown when one or more errors occur during composition in 
4465                a <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
4466            </summary>
4467        </member>
4468        <member name="M:System.ComponentModel.Composition.CompositionException.#ctor">
4469            <summary>
4470                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionException"/> class.
4471            </summary>
4472        </member>
4473        <member name="M:System.ComponentModel.Composition.CompositionException.#ctor(System.String)">
4474            <summary>
4475                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionException"/> class 
4476                with the specified error message.
4477            </summary>
4478            <param name="message">
4479                A <see cref="T:System.String"/> containing a message that describes the 
4480                <see cref="T:System.ComponentModel.Composition.CompositionException"/>; or <see langword="null"/> to set
4481                the <see cref="P:System.Exception.Message"/> property to its default value.
4482            </param>
4483        </member>
4484        <member name="M:System.ComponentModel.Composition.CompositionException.#ctor(System.String,System.Exception)">
4485            <summary>
4486                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionException"/> class 
4487                with the specified error message and exception that is the cause of the  
4488                exception.
4489            </summary>
4490            <param name="message">
4491                A <see cref="T:System.String"/> containing a message that describes the 
4492                <see cref="T:System.ComponentModel.Composition.CompositionException"/>; or <see langword="null"/> to set
4493                the <see cref="P:System.Exception.Message"/> property to its default value.
4494            </param>
4495            <param name="innerException">
4496                The <see cref="T:System.Exception"/> that is the underlying cause of the 
4497                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>; or <see langword="null"/> to set
4498                the <see cref="P:System.Exception.InnerException"/> property to <see langword="null"/>.
4499            </param>
4500        </member>
4501        <member name="M:System.ComponentModel.Composition.CompositionException.#ctor(System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.CompositionError})">
4502            <summary>
4503                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionException"/> class 
4504                with the specified errors.
4505            </summary>
4506            <param name="errors">
4507                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.CompositionError"/> objects
4508                representing the errors that are the cause of the 
4509                <see cref="T:System.ComponentModel.Composition.CompositionException"/>; or <see langword="null"/> to set the 
4510                <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> property to an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
4511            </param>
4512            <exception cref="T:System.ArgumentException">
4513                <paramref name="errors"/> contains an element that is <see langword="null"/>.
4514            </exception>
4515        </member>
4516        <member name="M:System.ComponentModel.Composition.CompositionException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
4517            <summary>
4518                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionException"/> class 
4519                with the specified serialization data.
4520            </summary>
4521            <param name="info">
4522                The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the 
4523                <see cref="T:System.ComponentModel.Composition.CompositionException"/>.
4524            </param>
4525            <param name="context">
4526                The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the 
4527                source or destination.
4528            </param>
4529            <exception cref="T:System.ArgumentNullException">
4530                <paramref name="info"/> is <see langword="null"/>.
4531            </exception>
4532            <exception cref="T:System.Runtime.Serialization.SerializationException">
4533                <paramref name="info"/> is missing a required value.
4534            </exception>
4535            <exception cref="T:System.InvalidCastException">
4536                <paramref name="info"/> contains a value that cannot be cast to the correct type.
4537            </exception>
4538        </member>
4539        <member name="M:System.ComponentModel.Composition.CompositionException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
4540            <summary>
4541                Gets the serialization data of the exception.
4542            </summary>
4543            <param name="info">
4544                The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the 
4545                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>.
4546            </param>
4547            <param name="context">
4548                The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the 
4549                source or destination.
4550            </param>
4551            <exception cref="T:System.ArgumentNullException">
4552                <paramref name="info"/> is <see langword="null"/>.
4553            </exception>
4554        </member>
4555        <member name="P:System.ComponentModel.Composition.CompositionException.Errors">
4556            <summary>
4557                Gets the errors that are the cause of the exception.
4558            </summary>
4559            <value>
4560                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.CompositionError"/> objects
4561                representing the errors that are the cause of the 
4562                <see cref="T:System.ComponentModel.Composition.CompositionException"/>.
4563            </value>
4564        </member>
4565        <member name="P:System.ComponentModel.Composition.CompositionException.Message">
4566            <summary>
4567                Gets a message that describes the exception.
4568            </summary>
4569            <value>
4570                A <see cref="T:System.String"/> containing a message that describes the 
4571                <see cref="T:System.ComponentModel.Composition.CompositionException"/>.
4572            </value>
4573        </member>
4574        <member name="T:System.ComponentModel.Composition.CompositionOptionsAttribute">
4575            <summary>
4576                Specifies discovery and creation options for an attributed part.
4577            </summary>
4578        </member>
4579        <member name="M:System.ComponentModel.Composition.CompositionOptionsAttribute.#ctor">
4580            <summary>
4581                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionOptionsAttribute"/> class.
4582            </summary>
4583        </member>
4584        <member name="P:System.ComponentModel.Composition.CompositionOptionsAttribute.CreationPolicy">
4585            <summary>
4586                Gets or sets a value indicating the creation policy of the attributed part.
4587            </summary>
4588            <value>
4589                One of the <see cref="P:System.ComponentModel.Composition.CompositionOptionsAttribute.CreationPolicy"/> values indicating the creation policy of the 
4590                attributed part. The default is 
4591                <see cref="F:System.ComponentModel.Composition.CreationPolicy.Shared"/>.
4592            </value>
4593        </member>
4594        <member name="P:System.ComponentModel.Composition.CompositionOptionsAttribute.CatalogDiscoveryMode">
4595            <summary>
4596                Gets or sets a value indicating when an attributed part will be discovered.
4597            </summary>
4598            <value>
4599                One of the <see cref="P:System.ComponentModel.Composition.CompositionOptionsAttribute.CatalogDiscoveryMode"/> values indicating when the attributed part 
4600                will be discovered by a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/>. The default is 
4601                <see cref="F:System.ComponentModel.Composition.CatalogDiscoveryMode.Auto"/>.
4602            </value>
4603        </member>
4604        <member name="T:System.ComponentModel.Composition.CompositionServiceExtensions">
4605            <summary>
4606                Provides extension methods for the <see cref="T:System.ComponentModel.Composition.ICompositionService"/> interface.
4607            </summary>
4608        </member>
4609        <member name="M:System.ComponentModel.Composition.CompositionServiceExtensions.SatisfyImports(System.ComponentModel.Composition.ICompositionService,System.ComponentModel.Composition.Primitives.ComposablePart)">
4610            <summary>
4611                Satisfies the imports of the specified composable part.
4612            </summary>
4613            <param name="part">
4614                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> to set the imports and register for recomposition.
4615            </param>
4616            <exception cref="T:System.ArgumentNullException">
4617                <paramref name="part"/> is <see langword="null"/>.
4618            </exception>
4619            <exception cref="T:System.ComponentModel.Composition.CompositionException">
4620                An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
4621                contain a collection of errors that occurred.
4622            </exception>
4623            <exception cref="T:System.ObjectDisposedException">
4624                The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
4625            </exception>
4626        </member>
4627        <member name="M:System.ComponentModel.Composition.CompositionServiceExtensions.SatisfyImports(System.ComponentModel.Composition.ICompositionService,System.Object,System.Boolean)">
4628            <summary>
4629                Satisfies the imports of the specified attributed composable part and registers it for 
4630                recomposition if requested.
4631            </summary>
4632            <param name="part">
4633                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> to set the imports and register for recomposition.
4634            </param>
4635            <param name="registerForRecomposition">
4636                Indicates whether the part will keep recomposing after the initial import satisfaction
4637            </param>
4638            <exception cref="T:System.ArgumentNullException">
4639                <paramref name="attributedPart"/> is <see langword="null"/>.
4640            </exception>
4641            <exception cref="T:System.ComponentModel.Composition.CompositionException">
4642                An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
4643                contain a collection of errors that occurred.
4644            </exception>
4645            <exception cref="T:System.ObjectDisposedException">
4646                The <see cref="T:System.ComponentModel.Composition.ICompositionService"/> has been disposed of.
4647            </exception>
4648        </member>
4649        <member name="M:System.ComponentModel.Composition.CompositionServiceExtensions.SatisfyImports(System.ComponentModel.Composition.ICompositionService,System.Object)">
4650            <summary>
4651                Satisfies the imports of the specified attributed composable part.
4652            </summary>
4653            <param name="part">
4654                The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> to set the imports and register for recomposition.
4655            </param>
4656            <exception cref="T:System.ArgumentNullException">
4657                <paramref name="attributedPart"/> is <see langword="null"/>.
4658            </exception>
4659            <exception cref="T:System.ComponentModel.Composition.CompositionException">
4660                An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
4661                contain a collection of errors that occurred.
4662            </exception>
4663            <exception cref="T:System.ObjectDisposedException">
4664                The <see cref="T:System.ComponentModel.Composition.ICompositionService"/> has been disposed of.
4665            </exception>
4666        </member>
4667        <member name="T:System.ComponentModel.Composition.ContractTypeAttribute">
4668            <summary>
4669                Specifies that a class, interface or delegate is a contract type.
4670            </summary>
4671        </member>
4672        <member name="M:System.ComponentModel.Composition.ContractTypeAttribute.#ctor">
4673            <summary>
4674                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ContractTypeAttribute"/> class, using the 
4675                default contract name.
4676            </summary>
4677            <remarks>
4678                <para>
4679                    The default contract name is the result of calling 
4680                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on the type that is 
4681                    marked with this attribute.
4682                </para>
4683                <para>
4684                    The contract name is compared using a case-sensitive, non-linguistic comparison 
4685                    using <see cref="P:System.StringComparer.Ordinal"/>.
4686                </para>
4687            </remarks>
4688        </member>
4689        <member name="M:System.ComponentModel.Composition.ContractTypeAttribute.#ctor(System.String)">
4690            <summary>
4691                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ImportAttribute"/> class with the 
4692                specified contract name.
4693            </summary>
4694            <param name="contractName">
4695                 A <see cref="T:System.String"/> containing the contract name of the type, or 
4696                 <see langword="null"/> or an empty string ("") to use the default contract name.
4697            </param>
4698            <remarks>
4699                <para>
4700                    The default contract name is the result of calling 
4701                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on the type that is 
4702                    marked with this attribute.
4703                </para>
4704                <para>
4705                    The contract name is compared using a case-sensitive, non-linguistic comparison 
4706                    using <see cref="P:System.StringComparer.Ordinal"/>.
4707                </para>
4708            </remarks>
4709        </member>
4710        <member name="P:System.ComponentModel.Composition.ContractTypeAttribute.ContractName">
4711            <summary>
4712                Gets the contract name of the contract type.
4713            </summary>
4714            <value>
4715                 A <see cref="T:System.String"/> containing the contract name of the contract 
4716                 <see cref="T:System.Type"/>. The default value is an empty string ("").
4717            </value>
4718        </member>
4719        <member name="P:System.ComponentModel.Composition.ContractTypeAttribute.MetadataViewType">
4720            <summary>
4721                Gets the metadata view of the contract type.
4722            </summary>
4723            <value>
4724                A <see cref="T:System.Type"/> representing the metadata view of the contract 
4725                <see cref="T:System.Type"/>. The default value is <see langword="null"/>.
4726            </value>
4727        </member>
4728        <member name="T:System.ComponentModel.Composition.CreationPolicy">
4729            <summary>
4730            Option placed on a type that controls when the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> creates 
4731            a new instance of a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
4732            </summary>
4733        </member>
4734        <member name="F:System.ComponentModel.Composition.CreationPolicy.Any">
4735            <summary>
4736            Let the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> choose the most appropriate <see cref="T:System.ComponentModel.Composition.CreationPolicy"/>
4737            for the part given the current context. This is the default <see cref="T:System.ComponentModel.Composition.CreationPolicy"/>, with
4738            the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> choosing <see cref="F:System.ComponentModel.Composition.CreationPolicy.Shared"/> by default
4739            unless the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> or importer requests <see cref="F:System.ComponentModel.Composition.CreationPolicy.NonShared"/>.
4740            </summary>
4741        </member>
4742        <member name="F:System.ComponentModel.Composition.CreationPolicy.Shared">
4743            <summary>
4744            A single shared instance of the associated <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> will be created
4745            by the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> and shared by all requestors.
4746            </summary>
4747        </member>
4748        <member name="F:System.ComponentModel.Composition.CreationPolicy.NonShared">
4749            <summary>
4750            A new non-shared instance of the associated <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> will be created
4751            by the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> for every requestor.
4752            </summary>
4753        </member>
4754        <member name="T:System.ComponentModel.Composition.ExportAttribute">
4755            <summary>
4756                Specifies that a type, property, field, or method provides a particular export.
4757            </summary>
4758        </member>
4759        <member name="M:System.ComponentModel.Composition.ExportAttribute.#ctor">
4760            <summary>
4761                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportAttribute"/> class, exporting the
4762                type or member marked with this attribute under the default contract name.
4763            </summary>
4764            <remarks>
4765                <para>
4766                    The default contract name is the result of calling 
4767                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on the type of the 
4768                    property or field, or the type itself, that is marked with this attribute. 
4769                    Methods must specify a contract name or type using either 
4770                    <see cref="M:System.ComponentModel.Composition.ExportAttribute.#ctor(System.Type)"/> or <see cref="M:System.ComponentModel.Composition.ExportAttribute.#ctor(System.String)"/>.
4771                </para>
4772                <para>
4773                    The contract name is compared using a case-sensitive, non-linguistic comparison 
4774                    using <see cref="P:System.StringComparer.Ordinal"/>.
4775                </para>
4776            </remarks>
4777        </member>
4778        <member name="M:System.ComponentModel.Composition.ExportAttribute.#ctor(System.Type)">
4779            <summary>
4780                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportAttribute"/> class, exporting the
4781                type or member marked with this attribute under a contract name derived from the 
4782                specified type.
4783            </summary>
4784            <param name="contractType">
4785                A <see cref="T:System.Type"/> of which to derive the contract name to export the type or 
4786                member marked with this attribute, under; or <see langword="null"/> to use the 
4787                default contract name.
4788            </param>
4789            <remarks>
4790                <para>
4791                    The contract name is the result of calling 
4792                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on 
4793                    <paramref name="contractType"/>.
4794                </para>
4795                <para>
4796                    The default contract name is the result of calling 
4797                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on the type of the 
4798                    property or field, or the type itself, that is marked with this attribute. 
4799                    Methods must specify a contract name or type using either 
4800                    <see cref="M:System.ComponentModel.Composition.ExportAttribute.#ctor(System.Type)"/> or <see cref="M:System.ComponentModel.Composition.ExportAttribute.#ctor(System.String)"/>.
4801                </para>
4802                <para>
4803                    The contract name is compared using a case-sensitive, non-linguistic comparison 
4804                    using <see cref="P:System.StringComparer.Ordinal"/>.
4805                </para>
4806            </remarks>
4807        </member>
4808        <member name="M:System.ComponentModel.Composition.ExportAttribute.#ctor(System.String)">
4809            <summary>
4810                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportAttribute"/> class, exporting the
4811                type or member marked with this attribute under the specified contract name.
4812            </summary>
4813            <param name="contractName">
4814                 A <see cref="T:System.String"/> containing the contract name to export the type or member 
4815                 marked with this attribute, under; or <see langword="null"/> or an empty string 
4816                 ("") to use the default contract name.
4817            </param>
4818            <remarks>
4819                <para>
4820                    The default contract name is the result of calling 
4821                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on the property or field 
4822                    type, or the type itself that this is marked with this attribute. Methods must 
4823                    specify a contract name or type using either <see cref="M:System.ComponentModel.Composition.ExportAttribute.#ctor(System.Type)"/>
4824                    or <see cref="M:System.ComponentModel.Composition.ExportAttribute.#ctor(System.String)"/>.
4825                </para>
4826                <para>
4827                    The contract name is compared using a case-sensitive, non-linguistic comparison 
4828                    using <see cref="P:System.StringComparer.Ordinal"/>.
4829                </para>
4830            </remarks>
4831        </member>
4832        <member name="P:System.ComponentModel.Composition.ExportAttribute.ContractName">
4833            <summary>
4834                Gets the contract name to export the type or member under.
4835            </summary>
4836            <value>
4837                 A <see cref="T:System.String"/> containing the contract name to export the type or member 
4838                 marked with this attribute, under. The default value is an empty string ("").
4839            </value>
4840        </member>
4841        <member name="T:System.ComponentModel.Composition.ExportMetadataAttribute">
4842            <summary>
4843                Specifies metadata for a type, property, field, or method marked with the
4844                <see cref="T:System.ComponentModel.Composition.ExportAttribute"/>.
4845            </summary>
4846        </member>
4847        <member name="M:System.ComponentModel.Composition.ExportMetadataAttribute.#ctor(System.String,System.Object)">
4848            <summary>
4849                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportMetadataAttribute"/> with the 
4850                specified name and metadata value.
4851            </summary>
4852            <param name="name">
4853                A <see cref="T:System.String"/> containing the name of the metadata value; or 
4854                <see langword="null"/> to set the <see cref="P:System.ComponentModel.Composition.ExportMetadataAttribute.Name"/> property to an empty 
4855                string ("").
4856            </param>
4857            <param name="value">
4858                An <see cref="T:System.Object"/> containing the metadata value. This can be 
4859                <see langword="null"/>.
4860            </param>
4861        </member>
4862        <member name="P:System.ComponentModel.Composition.ExportMetadataAttribute.Name">
4863            <summary>
4864                Gets the name of the metadata value.
4865            </summary>
4866            <value>
4867                A <see cref="T:System.String"/> containing the name of the metadata value.
4868            </value>
4869        </member>
4870        <member name="P:System.ComponentModel.Composition.ExportMetadataAttribute.Value">
4871            <summary>
4872                Gets the metadata value.
4873            </summary>
4874            <value>
4875                An <see cref="T:System.Object"/> containing the metadata value.
4876            </value>
4877        </member>
4878        <member name="T:System.ComponentModel.Composition.ImportAttribute">
4879            <summary>
4880                Specifies that a property, field, or parameter imports a particular export.
4881            </summary>
4882        </member>
4883        <member name="M:System.ComponentModel.Composition.ImportAttribute.#ctor">
4884            <summary>
4885                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ImportAttribute"/> class, importing the 
4886                export with the default contract name.
4887            </summary>
4888            <remarks>
4889                <para>
4890                    The default contract name is the result of calling 
4891                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on the property, field, 
4892                    or parameter type that this is marked with this attribute.
4893                </para>
4894                <para>
4895                    The contract name is compared using a case-sensitive, non-linguistic comparison 
4896                    using <see cref="P:System.StringComparer.Ordinal"/>.
4897                </para>
4898            </remarks>
4899        </member>
4900        <member name="M:System.ComponentModel.Composition.ImportAttribute.#ctor(System.Type)">
4901            <summary>
4902                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ImportAttribute"/> class, importing the
4903                export with the contract name derived from the specified type.
4904            </summary>
4905            <param name="contractType">
4906                A <see cref="T:System.Type"/> of which to derive the contract name of the export to import, or 
4907                <see langword="null"/> to use the default contract name.
4908            </param>
4909            <remarks>
4910                <para>
4911                    The contract name is the result of calling 
4912                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on 
4913                    <paramref name="contractType"/>.
4914                </para>
4915                <para>
4916                    The default contract name is the result of calling 
4917                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on the property, field, 
4918                    or parameter type that is marked with this attribute.
4919                </para>
4920                <para>
4921                    The contract name is compared using a case-sensitive, non-linguistic comparison 
4922                    using <see cref="P:System.StringComparer.Ordinal"/>.
4923                </para>
4924            </remarks>
4925        </member>
4926        <member name="M:System.ComponentModel.Composition.ImportAttribute.#ctor(System.String)">
4927            <summary>
4928                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ImportAttribute"/> class, importing the
4929                export with the specified contract name.
4930            </summary>
4931            <param name="contractName">
4932                 A <see cref="T:System.String"/> containing the contract name of the export to import, or 
4933                 <see langword="null"/> or an empty string ("") to use the default contract name.
4934            </param>
4935            <remarks>
4936                <para>
4937                    The default contract name is the result of calling 
4938                    <see cref="M:System.ComponentModel.Composition.Hosting.CompositionServices.GetContractName(System.Type)"/> on the property, field, 
4939                    or parameter type that is marked with this attribute.
4940                </para>
4941                <para>
4942                    The contract name is compared using a case-sensitive, non-linguistic comparison 
4943                    using <see cref="P:System.StringComparer.Ordinal"/>.
4944                </para>
4945            </remarks>
4946        </member>
4947        <member name="P:System.ComponentModel.Composition.ImportAttribute.ContractName">
4948            <summary>
4949                Gets the contract name of the export to import.
4950            </summary>
4951            <value>
4952                 A <see cref="T:System.String"/> containing the contract name of the export to import. The 
4953                 default value is an empty string ("").
4954            </value>
4955        </member>
4956        <member name="P:System.ComponentModel.Composition.ImportAttribute.AllowDefault">
4957            <summary>
4958                Gets or sets a value indicating whether the property, field or parameter will be set 
4959                to its type's default value when an export with the contract name is not present in 
4960                the container.
4961            </summary>
4962            <value>
4963                <see langword="true"/> if the property, field or parameter will be set 
4964                its type's default value when an export with the <see cref="P:System.ComponentModel.Composition.ImportAttribute.ContractName"/> is not 
4965                present in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>; otherwise, <see langword="false"/>. 
4966                The default value is <see langword="false"/>.
4967            </value>
4968            <remarks>
4969                <para>
4970                    The default value of a property's, field's or parameter's type is 
4971                    <see langword="null"/> for reference types and 0 for numeric value types. For 
4972                    other value types, the default value will be each field of the value type 
4973                    initialized to zero, if the field is a value type or <see langword="null"/> if 
4974                    the field is a reference type.
4975                </para>
4976            </remarks>
4977        </member>
4978        <member name="P:System.ComponentModel.Composition.ImportAttribute.AllowRecomposition">
4979            <summary>
4980                Gets or sets a value indicating whether the property or field will be recomposed
4981                when exports that provide the same contract that this import expects, have changed
4982                in the container. 
4983            </summary>
4984            <value>
4985                <see langword="true"/> if the property or field allows for recomposition when exports
4986                that provide the same <see cref="P:System.ComponentModel.Composition.ImportAttribute.ContractName"/> are added or removed from the 
4987                <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>; otherwise, <see langword="false"/>. 
4988                The default value is <see langword="false"/>.
4989            </value>
4990        </member>
4991        <member name="P:System.ComponentModel.Composition.ImportAttribute.RequiredCreationPolicy">
4992            <summary>
4993                Gets or sets a value indicating that the importer requires a specific 
4994                <see cref="T:System.ComponentModel.Composition.CreationPolicy"/> for the exports used to satisfy this import. T
4995            </summary>
4996            <value>
4997                <see cref="F:System.ComponentModel.Composition.CreationPolicy.Any"/> - default value, used if the importer doesn't 
4998                    require a specific <see cref="T:System.ComponentModel.Composition.CreationPolicy"/>.
4999            
5000                <see cref="F:System.ComponentModel.Composition.CreationPolicy.Shared"/> - Requires that all exports used should be shared
5001                    by everyone in the container.
5002            
5003                <see cref="F:System.ComponentModel.Composition.CreationPolicy.NonShared"/> - Requires that all exports used should be 
5004                    non-shared in a container and thus everyone gets their own instance.
5005            </value>
5006        </member>
5007        <member name="T:System.ComponentModel.Composition.MetadataAttributeAttribute">
5008            <summary>
5009                Specifies that an attribute can be used to provide metadata for a type, property, field,
5010                or method marked with the <see cref="T:System.ComponentModel.Composition.ExportAttribute"/>.
5011            </summary>
5012        </member>
5013        <member name="M:System.ComponentModel.Composition.MetadataAttributeAttribute.#ctor">
5014            <summary>
5015                Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.MetadataAttributeAttribute"/> class.
5016            </summary>
5017        </member>
5018        <member name="M:System.ComponentModel.Composition.Hosting.DirectoryCatalog.GetExports(System.ComponentModel.Composition.Primitives.ImportDefinition)">
5019            <summary>
5020                Returns the export definitions that match the constraint defined by the specified definition.
5021            </summary>
5022            <param name="definition">
5023                The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the 
5024                <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects to return.
5025            </param>
5026            <returns>
5027                An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.TempTuple`2"/> containing the 
5028                <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects and their associated 
5029                <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> for objects that match the constraint defined 
5030                by <paramref name="definition"/>.
5031            </returns>
5032            <exception cref="T:System.ArgumentNullException">
5033                <paramref name="definition"/> is <see langword="null"/>.
5034            </exception>
5035            <exception cref="T:System.ObjectDisposedException">
5036                The <see cref="T:System.ComponentModel.Composition.Hosting.DirectoryCatalog"/> has been disposed of.
5037            </exception>
5038        </member>
5039        <member name="M:System.ComponentModel.Composition.Hosting.DirectoryCatalog.ToString">
5040            <summary>
5041                Returns a string representation of the directory catalog.
5042            </summary>
5043            <returns>
5044                A <see cref="T:System.String"/> containing the string representation of the <see cref="T:System.ComponentModel.Composition.Hosting.DirectoryCatalog"/>.
5045            </returns>
5046        </member>
5047        <member name="P:System.ComponentModel.Composition.Hosting.DirectoryCatalog.Parts">
5048            <summary>
5049                Gets the part definitions of the directory catalog.
5050            </summary>
5051            <value>
5052                A <see cref="T:System.Linq.IQueryable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects of the 
5053                <see cref="T:System.ComponentModel.Composition.Hosting.DirectoryCatalog"/>.
5054            </value>
5055            <exception cref="T:System.ObjectDisposedException">
5056                The <see cref="T:System.ComponentModel.Composition.Hosting.DirectoryCatalog"/> has been disposed of.
5057            </exception>
5058        </member>
5059        <member name="P:System.ComponentModel.Composition.Hosting.DirectoryCatalog.System#ComponentModel#Composition#Primitives#ICompositionElement#DisplayName">
5060            <summary>
5061                Gets the display name of the directory catalog.
5062            </summary>
5063            <value>
5064                A <see cref="T:System.String"/> containing a human-readable display name of the <see cref="T:System.ComponentModel.Composition.Hosting.DirectoryCatalog"/>.
5065            </value>
5066        </member>
5067        <member name="P:System.ComponentModel.Composition.Hosting.DirectoryCatalog.System#ComponentModel#Composition#Primitives#ICompositionElement#Origin">
5068            <summary>
5069                Gets the composition element from which the directory catalog originated.
5070            </summary>
5071            <value>
5072                This property always returns <see langword="null"/>.
5073            </value>
5074        </member>
5075        <member name="E:System.ComponentModel.Composition.Hosting.DirectoryCatalog.Changed">
5076            <summary>
5077            Notify when the contents of the Catalog has changed.
5078            </summary>
5079        </member>
5080    </members>
5081</doc>