<?xml version="1.0"?>
<doc>
<assembly>
<name>System.ComponentModel.Composition</name>
</assembly>
<members>
<member name="T:Microsoft.Internal.Strings">
<summary>
A strongly-typed resource class, for looking up localized strings, etc.
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ResourceManager">
<summary>
Returns the cached ResourceManager instance used by this class.
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.Culture">
<summary>
Overrides the current thread's CurrentUICulture property for all
resource lookups using this strongly typed resource class.
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.Argument_AssemblyReflectionOnly">
<summary>
Looks up a localized string similar to '{0}' is a reflection-only assembly which is not supported..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.Argument_ElementReflectionOnlyType">
<summary>
Looks up a localized string similar to '{0}' contains a reflection-only type which is not supported..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.Argument_ExportsEmpty">
<summary>
Looks up a localized string similar to 'exports' cannot be empty when ImportDefinition.ImportCardinality is ImportCardinality.ExactlyOne..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.Argument_ExportsTooMany">
<summary>
Looks up a localized string similar to 'exports' cannot contain more than one element when ImportDefinition.ImportCardinality is ImportCardinality.ZeroOrOne or ImportCardinality.ExactlyOne..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.Argument_NullElement">
<summary>
Looks up a localized string similar to '{0}' cannot contain a null (Nothing in Visual Basic) element..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ArgumentException_EmptyString">
<summary>
Looks up a localized string similar to '{0}' cannot be an empty string ("")..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ArgumentOutOfRange_InvalidEnum">
<summary>
Looks up a localized string similar to The value of argument '{0}' ({1}) is invalid for Enum type '{2}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ArgumentOutOfRange_InvalidEnumInSet">
<summary>
Looks up a localized string similar to The value of argument '{0}' ({1}) is not supported. Allowed values are : '{2}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ArgumentValueType">
<summary>
Looks up a localized string similar to The argument was a value type which is not supported..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.AssemblyFileNotFoundOrWrongType">
<summary>
Looks up a localized string similar to Assembly file {0} is either not found or not a dll or exe file..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.AtomicComposition_AlreadyCompleted">
<summary>
Looks up a localized string similar to The atomicComposition can no longer be changed because the atomicComposition has already been completed..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.AtomicComposition_AlreadyNested">
<summary>
Looks up a localized string similar to The atomicComposition is already contains an inner atomicComposition and cannot contain more than one atomicComposition at a time..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.AtomicComposition_PartOfAnotherAtomicComposition">
<summary>
Looks up a localized string similar to The atomicComposition contains another inner atomicComposition and cannot be changed until the that inner atomicComposition has been completed..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CardinalityMismatch_NoExports">
<summary>
Looks up a localized string similar to No valid exports were found that match the constraint '{0}', invalid exports may have been rejected..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CardinalityMismatch_TooManyExports">
<summary>
Looks up a localized string similar to More than one export was found that matches the constraint '{0}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionElement_UnknownOrigin">
<summary>
Looks up a localized string similar to Unknown Origin.
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionException_ChangesRejected">
<summary>
Looks up a localized string similar to The composition remains unchanged. The changes were rejected because of the following error(s): {0}.
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionException_ElementPrefix">
<summary>
Looks up a localized string similar to Element: {0}.
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionException_ErrorPrefix">
<summary>
Looks up a localized string similar to Resulting in:.
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionException_MetadataViewInvalidConstructor">
<summary>
Looks up a localized string similar to Unable to create an instance of the Metadata view '{0}' because a constructor could not be selected. Ensure that the type implements a constructor which takes an argument of type IDictionary<string, object>..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionException_MultipleErrorsWithMultiplePaths">
<summary>
Looks up a localized string similar to The composition produced multiple composition errors, with {0:N0} root causes. The root causes are provided below..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionException_OriginFormat">
<summary>
Looks up a localized string similar to {0} {1}.
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionException_OriginSeparator">
<summary>
Looks up a localized string similar to --> .
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionException_PathsCountSeparator">
<summary>
Looks up a localized string similar to ).
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionException_ReviewErrorProperty">
<summary>
Looks up a localized string similar to Review the CompositionException.Errors property for more detailed information..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionException_SingleErrorWithMultiplePaths">
<summary>
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..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionException_SingleErrorWithSinglePath">
<summary>
Looks up a localized string similar to The composition produced a single composition error. The root cause is provided below..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionTrace_Discovery_AssemblyLoadFailed">
<summary>
Looks up a localized string similar to The catalog '{0}' could not load assembly '{1}'. {2}.
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionTrace_Discovery_DefinitionContainsGenericParameters">
<summary>
Looks up a localized string similar to The ComposablePartDefinition '{0}' was ignored because it is an open generic type..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionTrace_Discovery_DefinitionContainsNoExports">
<summary>
Looks up a localized string similar to The ComposablePartDefinition '{0}' was ignored because it contains no exports..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionTrace_Discovery_DefinitionMarkedWithPartNotDiscoverableAttribute">
<summary>
Looks up a localized string similar to The ComposablePartDefinition '{0}' was ignored because it was marked with PartNotDiscoverableAttribute..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionTrace_Discovery_MemberMarkedWithMultipleImportAndImportMany">
<summary>
Looks up a localized string similar to The member or parameter '{0}' is marked with multiple Import and ImportMany attributes. Only the first attribute encountered will be respected..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionTrace_Rejection_DefinitionRejected">
<summary>
Looks up a localized string similar to The ComposablePartDefinition '{0}' has been rejected. {1}.
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.CompositionTrace_Rejection_DefinitionResurrected">
<summary>
Looks up a localized string similar to The ComposablePartDefinition '{0}' that was previously rejected has been resurrected..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ContractMismatch_ExportedValueCannotBeCastToT">
<summary>
Looks up a localized string similar to Cannot cast the underlying exported value of type '{0}' to type '{1}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ContractMismatch_InvalidCastOnMetadataField">
<summary>
Looks up a localized string similar to Unable to create an Instance of the Metadata view '{0}' because the exporter exported the metadata for the item '{1}' with the value '{2}' as type '{3}' but the view imports it as type '{4}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ContractMismatch_NullReferenceOnMetadataField">
<summary>
Looks up a localized string similar to Unable to create an Instance of the Metadata view '{0}' because the exporter exported the metadata for the item '{1}' with a null value and null is not a valid value for type '{2}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.DirectoryNotFound">
<summary>
Looks up a localized string similar to Directory '{0}' could not be found..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.Discovery_DuplicateMetadataNameValues">
<summary>
Looks up a localized string similar to Member or Type '{0}' contains multiple metadata entries with the name '{1}'. The metadata entries could be coming from the ExportMetadataAttribute or from a property of a custom metadata attribute. Either remove the duplicate entries or enable the metadata entry with name '{1}' to allow multiple entries via the IsMultiple property on ExportMetadataAttribute or AttributeUsage.AllowMultiple on custom metadata attributes..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.Discovery_MetadataContainsValueWithInvalidType">
<summary>
Looks up a localized string similar to Property '{0}' has type '{1}' which is an invalid metadata type. Metadata can only contain values with a type that is available to be embedded at compile-time into attributes. For more details of what types are valid reference section 17.1.3 in the C# specification..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.Discovery_ReservedMetadataNameUsed">
<summary>
Looks up a localized string similar to Member or Type '{0}' contains a metadata entry with the name '{1}', which is a reserved metadata key name. Either remove this metadata entry or change the name associated with the entry..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ExportDefinitionNotOnThisComposablePart">
<summary>
Looks up a localized string similar to {0} did not originate from the ExportDefinitions property on this ComposablePart or its ComposablePartDefinition..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ImportDefinitionNotOnThisComposablePart">
<summary>
Looks up a localized string similar to {0} did not originate from the ImportDefinitions property on this ComposablePart or its ComposablePartDefinition..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ImportEngine_ComposeTookTooManyIterations">
<summary>
Looks up a localized string similar to The composition failed because it did not complete within '{0:N0}' 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..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ImportEngine_InvalidStateForRecomposition">
<summary>
Looks up a localized string similar to The ComposablePart of type '{0}' cannot be recomposed because it is in an invalid state. It can only be recomposed if it has already been fully previewed or composed..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ImportEngine_PartCannotActivate">
<summary>
Looks up a localized string similar to Cannot activate part '{0}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ImportEngine_PartCannotGetExportedValue">
<summary>
Looks up a localized string similar to Cannot get export '{0}' from part '{1}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ImportEngine_PartCannotSetImport">
<summary>
Looks up a localized string similar to Cannot set import '{0}' on part '{1}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ImportEngine_PartCycle">
<summary>
Looks up a localized string similar to Cannot compose part '{0}' 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..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ImportEngine_PreventedByExistingImport">
<summary>
Looks up a localized string similar to Change in exports prevented by non-recomposable import '{0}' on part '{1}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ImportNotSetOnPart">
<summary>
Looks up a localized string similar to Could not finishing composing object of type '{0}'. The import '{1}' was not satisfied..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.InternalExceptionMessage">
<summary>
Looks up a localized string similar to Internal error occurred. Additional information: '{0}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.InvalidMetadataValue">
<summary>
Looks up a localized string similar to Metadata can only contain values with a type that is available to be embedded at compile-time into attributes. For more details of what types are valid reference section 17.1.3 in the C# specification..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.InvalidMetadataView">
<summary>
Looks up a localized string similar to The Type '{0}' supplied is not a valid Metadata View..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.InvalidOperation_DefinitionCannotBeRecomposed">
<summary>
Looks up a localized string similar to 'definition' cannot be set after Activate has been called because ImportDefinition.IsRecomposable is false..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.InvalidOperation_GetExportedValueBeforePrereqImportSet">
<summary>
Looks up a localized string similar to GetExportedValue cannot be called before prerequisite import '{0}' has been set..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.InvalidOperationReentrantCompose">
<summary>
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..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.InvalidSetterOnMetadataField">
<summary>
Looks up a localized string similar to The MetadataView '{0}' is invalid because property '{1}' has a property set method..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.LazyMemberInfo_AccessorsNull">
<summary>
Looks up a localized string similar to Accessors must not be null (Nothing in Visual Basic)..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.LazyMemberInfo_InvalidAccessorOnSimpleMember">
<summary>
Looks up a localized string similar to A member of type '{0}' must have exactly a single accessor of type '{0}'.
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.LazyMemberinfo_InvalidEventAccessors_AccessorType">
<summary>
Looks up a localized string similar to All event accessors must be methods..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.LazyMemberInfo_InvalidEventAccessors_Cardinality">
<summary>
Looks up a localized string similar to An event must have exactly three accessors..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.LazyMemberinfo_InvalidPropertyAccessors_AccessorType">
<summary>
Looks up a localized string similar to All property accessors must be methods..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.LazyMemberInfo_InvalidPropertyAccessors_Cardinality">
<summary>
Looks up a localized string similar to A property must have exactly two accessors..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.LazyMemberInfo_NoAccessors">
<summary>
Looks up a localized string similar to A member must have at least one accessor..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.LazyServices_LazyResolvesToNull">
<summary>
Looks up a localized string similar to The lazily evaluated value of type '{0}' passed to the ReflectionModelServices API as part of the argument '{1}' must not return null (Nothing in Visual Basic)..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.MetadataItemNotSupported">
<summary>
Looks up a localized string similar to This export does not support the metadata item '{0}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.NotImplemented_NotOverriddenByDerived">
<summary>
Looks up a localized string similar to The {0} member must be overridden by a derived class..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.NotSupportedInterfaceMetadataView">
<summary>
Looks up a localized string similar to Interface '{0}' is not a valid MetadataView; MetadataViews do not support non-public interfaces, and interfaces that contain members that are not properties..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.NotSupportedReadOnlyDictionary">
<summary>
Looks up a localized string similar to The underlying dictionary is read-only..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ObjectAlreadyInitialized">
<summary>
Looks up a localized string similar to This property cannot be set after the object's public surface has been accessed..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ObjectMustBeInitialized">
<summary>
Looks up a localized string similar to This object has not been initialized - the property '{0}' must be set..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReentrantCompose">
<summary>
Looks up a localized string similar to Currently composing another batch in this ComposablePartExportProvider. Only one batch can be composed at a time..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_ExportNotReadable">
<summary>
Looks up a localized string similar to Cannot get the value of property '{0}', because the member is not readable. The property must have an accessible getter..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_ExportThrewException">
<summary>
Looks up a localized string similar to An exception occurred while trying to get the value of property '{0}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_ImportCollectionAddThrewException">
<summary>
Looks up a localized string similar to Cannot populate the collection '{0}' because an exception occurred while calling the Add method on the type '{1}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_ImportCollectionClearThrewException">
<summary>
Looks up a localized string similar to Cannot populate the collection '{0}' because an exception occurred while calling the Clear method on the type '{1}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_ImportCollectionConstructionThrewException">
<summary>
Looks up a localized string similar to Cannot populate the collection '{0}' because an exception occurred while calling the default constructor on the type '{1}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_ImportCollectionGetThrewException">
<summary>
Looks up a localized string similar to Cannot populate the collection '{0}' because an exception occurred while trying to access the collection value. If the collection is not IEnumerable<T> or T[] it must implement ICollection<T> and be either pre-initialized or be writable with a default constructor..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_ImportCollectionIsReadOnlyThrewException">
<summary>
Looks up a localized string similar to Cannot populate the collection '{0}' because an exception occurred while reading the IsReadOnly property on the type '{1}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_ImportCollectionNotWritable">
<summary>
Looks up a localized string similar to Cannot populate the collection '{0}' because it does not implement ICollection<T> or is read-only. If the collection is not IEnumerable<T> or T[] it must implement ICollection<T> and be either pre-initialized or be writable with a default constructor..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_ImportCollectionNull">
<summary>
Looks up a localized string similar to Cannot populate the value of enumerable member '{0}' because it is null (Nothing in Visual Basic). If the collection is not IEnumerable<T> or T[] it must implement ICollection<T> and be either pre-initialized or be writable with a default constructor..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_ImportManyOnParameterCanOnlyBeAssigned">
<summary>
Looks up a localized string similar to The importing constructor on type '{0}' is using ImportManyAttribute on parameter '{1}' with a non-assignable type. On constructor parameters the ImportManyAttribute only supports importing into types T[] or IEnumerable<T>..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_ImportNotAssignableFromExport">
<summary>
Looks up a localized string similar to The export '{0}' is not assignable to type '{1}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_ImportNotWritable">
<summary>
Looks up a localized string similar to Cannot set the value of '{0}' 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..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_ImportThrewException">
<summary>
Looks up a localized string similar to An exception occurred while trying to set the value of property '{0}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_InvalidExportDefinition">
<summary>
Looks up a localized string similar to ExportDefinition of type '{0}' cannot be used in this context. Only export definitions produced by the ReflectionModelServices.CreateExportDefinition are supported..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_InvalidImportDefinition">
<summary>
Looks up a localized string similar to ImportDefinition of type '{0}' cannot be used in this context. Only import definitions produced by the ReflectionModelServices.CreateImportDefinition are supported..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_InvalidMemberImportDefinition">
<summary>
Looks up a localized string similar to ImportDefinition of type '{0}' cannot be used in this context. Only import definitions produced by the ReflectionModelServices.CreateImportDefinition based on members are supported. Use ReflectionModelServices.IsImportingParameter to determine whether a given import definition is based on a member or a parameter..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_InvalidParameterImportDefinition">
<summary>
Looks up a localized string similar to ImportDefinition of type '{0}' cannot be used in this context. Only import definitions produced by the ReflectionModelServices.CreateImportDefinition based on parameters are supported. Use ReflectionModelServices.IsImportingParameter to determine whether a given import definition is based on a member or a parameter..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_InvalidPartDefinition">
<summary>
Looks up a localized string similar to ComposablePartDefinition of type '{0}' cannot be used in this context. Only part definitions produced by the ReflectionModelServices.CreatePartDefinition are supported..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_PartConstructorMissing">
<summary>
Looks up a localized string similar to Cannot create an instance of type '{0}' 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 'System.ComponentModel.Composition.ImportingConstructorAttribute'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_PartConstructorThrewException">
<summary>
Looks up a localized string similar to An exception occurred while trying to create an instance of type '{0}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.ReflectionModel_PartOnImportsSatisfiedThrewException">
<summary>
Looks up a localized string similar to An exception occurred while calling the 'OnImportsSatisfied' method on type '{0}'..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.TypeCatalog_DisplayNameFormat">
<summary>
Looks up a localized string similar to {0} (Types='{1}')..
</summary>
</member>
<member name="P:Microsoft.Internal.Strings.TypeCatalog_Empty">
<summary>
Looks up a localized string similar to <Empty>.
</summary>
</member>
<member name="T:System.ComponentModel.Composition.Hosting.ExportProvider">
<summary>
Defines the <see langword="abstract"/> base class for export providers, which provide
methods for retrieving <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExport``1">
<summary>
Returns the export with the contract name derived from the specified type parameter,
throwing an exception if there is not exactly one matching export.
</summary>
<typeparam name="T">
The type of the <see cref="T:System.Lazy`1"/> object to return. The contract name is also
derived from this type parameter.
</typeparam>
<returns>
The <see cref="T:System.Lazy`1"/> object with the contract name derived from
<typeparamref name="T"/>.
</returns>
<remarks>
<para>
The returned <see cref="T:System.Lazy`1"/> object is an instance of
<see cref="T:System.Lazy`2"/> underneath, where
<c>TMetadataView</c>
is <see cref="T:System.Collections.Generic.IDictionary`2"/> and where <c>TKey</c>
is <see cref="T:System.String"/> and <c>TValue</c> is <see cref="T:System.Object"/>.
</para>
<para>
The contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
<exception cref="T:System.ComponentModel.Composition.ImportCardinalityMismatchException">
<para>
There are zero <see cref="T:System.Lazy`1"/> objects with the contract name derived
from <typeparamref name="T"/> in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</para>
-or-
<para>
There are more than one <see cref="T:System.Lazy`1"/> objects with the contract name
derived from <typeparamref name="T"/> in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</para>
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExport``1(System.String)">
<summary>
Returns the export with the specified contract name, throwing an exception if there
is not exactly one matching export.
</summary>
<typeparam name="T">
The type of the <see cref="T:System.Lazy`1"/> object to return.
</typeparam>
<param name="contractName">
A <see cref="T:System.String"/> containing the contract name of the <see cref="T:System.Lazy`1"/>
object to return; or <see langword="null"/> or an empty string ("") to use the
default contract name.
</param>
<returns>
The <see cref="T:System.Lazy`1"/> object with the specified contract name.
</returns>
<remarks>
<para>
The returned <see cref="T:System.Lazy`1"/> object is an instance of
<see cref="T:System.Lazy`2"/> underneath, where
<c>TMetadataView</c>
is <see cref="T:System.Collections.Generic.IDictionary`2"/> and where <c>TKey</c>
is <see cref="T:System.String"/> and <c>TValue</c> is <see cref="T:System.Object"/>.
</para>
<para>
The contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
</para>
<para>
The default contract name is compared using a case-sensitive, non-linguistic
comparison using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
<exception cref="T:System.ComponentModel.Composition.ImportCardinalityMismatchException">
<para>
There are zero <see cref="T:System.Lazy`1"/> objects with the specified contract name
in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</para>
-or-
<para>
There are more than one <see cref="T:System.Lazy`1"/> objects with the specified contract
name in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</para>
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExport``2">
<summary>
Returns the export with the contract name derived from the specified type parameter,
throwing an exception if there is not exactly one matching export.
</summary>
<typeparam name="T">
The type of the <see cref="T:System.Lazy`2"/> object to return. The
contract name is also derived from this type parameter.
</typeparam>
<typeparam name="TMetadataView">
The type of the metadata view of the <see cref="T:System.Lazy`2"/> object
to return.
</typeparam>
<returns>
The <see cref="T:System.Lazy`2"/> object with the contract name derived
from <typeparamref name="T"/>.
</returns>
<remarks>
<para>
The contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
<exception cref="T:System.ComponentModel.Composition.ImportCardinalityMismatchException">
<para>
There are zero <see cref="T:System.Lazy`2"/> objects with the contract
name derived from <typeparamref name="T"/> in the
<see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</para>
-or-
<para>
There are more than one <see cref="T:System.Lazy`2"/> objects with the
contract name derived from <typeparamref name="T"/> in the
<see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</para>
</exception>
<exception cref="T:System.InvalidOperationException">
<typeparamref name="TMetadataView"/> is not a valid metadata view type.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExport``2(System.String)">
<summary>
Returns the export with the specified contract name, throwing an exception if there
is not exactly one matching export.
</summary>
<typeparam name="T">
The type of the <see cref="T:System.Lazy`2"/> object to return.
</typeparam>
<typeparam name="TMetadataView">
The type of the metadata view of the <see cref="T:System.Lazy`2"/> object
to return.
</typeparam>
<param name="contractName">
A <see cref="T:System.String"/> containing the contract name of the
<see cref="T:System.Lazy`2"/> object to return; or <see langword="null"/>
or an empty string ("") to use the default contract name.
</param>
<returns>
The <see cref="T:System.Lazy`2"/> object with the specified contract name.
</returns>
<remarks>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
<exception cref="T:System.ComponentModel.Composition.ImportCardinalityMismatchException">
<para>
There are zero <see cref="T:System.Lazy`2"/> objects with the
specified contract name in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</para>
-or-
<para>
There are more than one <see cref="T:System.Lazy`2"/> objects with the
specified contract name in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</para>
</exception>
<exception cref="T:System.InvalidOperationException">
<typeparamref name="TMetadataView"/> is not a valid metadata view type.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports(System.Type,System.Type,System.String)">
<summary>
Returns the exports with the specified contract name.
</summary>
<param name="type">
The <see cref="T:System.Type"/> of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects to return.
</param>
<param name="metadataViewType">
The <see cref="T:System.Type"/> of the metadata view of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects to
return.
</param>
<param name="contractName">
A <see cref="T:System.String"/> containing the contract name of the
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/> object to return; or <see langword="null"/>
or an empty string ("") to use the default contract name.
</param>
<returns>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> containing the <see cref="T:System.Lazy`2"/> objects
with the specified contract name, if found; otherwise, an empty
<see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</returns>
<remarks>
<para>
The returned <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects are instances of
<see cref="T:System.Lazy`2"/> underneath, where <c>T</c>
is <paramref name="type"/> and <c>TMetadataView</c> is
<paramref name="metadataViewType"/>.
</para>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on <paramref name="type"/>.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
<exception cref="T:System.ArgumentNullException">
<paramref name="type"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.InvalidOperationException">
<paramref name="metadataViewType"/> is not a valid metadata view type.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports``1">
<summary>
Returns the exports with the contract name derived from the specified type parameter.
</summary>
<typeparam name="T">
The type of the <see cref="T:System.Lazy`1"/> objects to return. The contract name is also
derived from this type parameter.
</typeparam>
<returns>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> containing the <see cref="T:System.Lazy`1"/> objects
with the contract name derived from <typeparamref name="T"/>, if found; otherwise,
an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</returns>
<remarks>
<para>
The returned <see cref="T:System.Lazy`1"/> objects are instances of
<see cref="T:System.Lazy`2"/> underneath, where
<c>TMetadataView</c>
is <see cref="T:System.Collections.Generic.IDictionary`2"/> and where <c>TKey</c>
is <see cref="T:System.String"/> and <c>TValue</c> is <see cref="T:System.Object"/>.
</para>
<para>
The contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports``1(System.String)">
<summary>
Returns the exports with the specified contract name.
</summary>
<typeparam name="T">
The type of the <see cref="T:System.Lazy`1"/> objects to return.
</typeparam>
<param name="contractName">
A <see cref="T:System.String"/> containing the contract name of the <see cref="T:System.Lazy`1"/>
objects to return; or <see langword="null"/> or an empty string ("") to use the
default contract name.
</param>
<returns>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> containing the <see cref="T:System.Lazy`1"/> objects
with the specified contract name, if found; otherwise, an empty
<see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</returns>
<remarks>
<para>
The returned <see cref="T:System.Lazy`1"/> objects are instances of
<see cref="T:System.Lazy`2"/> underneath, where
<c>TMetadataView</c>
is <see cref="T:System.Collections.Generic.IDictionary`2"/> and where <c>TKey</c>
is <see cref="T:System.String"/> and <c>TValue</c> is <see cref="T:System.Object"/>.
</para>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports``2">
<summary>
Returns the exports with the contract name derived from the specified type parameter.
</summary>
<typeparam name="T">
The type of the <see cref="T:System.Lazy`2"/> objects to return. The
contract name is also derived from this type parameter.
</typeparam>
<typeparam name="TMetadataView">
The type of the metadata view of the <see cref="T:System.Lazy`2"/> objects
to return.
</typeparam>
<returns>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> containing the
<see cref="T:System.Lazy`2"/> objects with the contract name derived from
<typeparamref name="T"/>, if found; otherwise, an empty
<see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</returns>
<remarks>
<para>
The contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
<exception cref="T:System.InvalidOperationException">
<typeparamref name="TMetadataView"/> is not a valid metadata view type.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports``2(System.String)">
<summary>
Returns the exports with the specified contract name.
</summary>
<typeparam name="T">
The type of the <see cref="T:System.Lazy`2"/> objects to return. The
contract name is also derived from this type parameter.
</typeparam>
<typeparam name="TMetadataView">
The type of the metadata view of the <see cref="T:System.Lazy`2"/> objects
to return.
</typeparam>
<param name="contractName">
A <see cref="T:System.String"/> containing the contract name of the
<see cref="T:System.Lazy`2"/> objects to return; or <see langword="null"/>
or an empty string ("") to use the default contract name.
</param>
<returns>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> containing the
<see cref="T:System.Lazy`2"/> objects with the specified contract name if
found; otherwise, an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</returns>
<remarks>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
<exception cref="T:System.InvalidOperationException">
<typeparamref name="TMetadataView"/> is not a valid metadata view type.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExportedValue``1">
<summary>
Returns the exported value with the contract name derived from the specified type
parameter, throwing an exception if there is not exactly one matching exported value.
</summary>
<typeparam name="T">
The type of the exported value to return. The contract name is also
derived from this type parameter.
</typeparam>
<returns>
The exported <see cref="T:System.Object"/> with the contract name derived from
<typeparamref name="T"/>.
</returns>
<remarks>
<para>
The contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
<exception cref="T:System.ComponentModel.Composition.CompositionContractMismatchException">
The underlying exported value cannot be cast to <typeparamref name="T"/>.
</exception>
<exception cref="T:System.ComponentModel.Composition.ImportCardinalityMismatchException">
<para>
There are zero exported values with the contract name derived from
<typeparamref name="T"/> in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</para>
-or-
<para>
There are more than one exported values with the contract name derived from
<typeparamref name="T"/> in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</para>
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
</exception>
<exception cref="T:System.ComponentModel.Composition.CompositionException">
An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
contain a collection of errors that occurred.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExportedValue``1(System.String)">
<summary>
Returns the exported value with the specified contract name, throwing an exception
if there is not exactly one matching exported value.
</summary>
<typeparam name="T">
The type of the exported value to return.
</typeparam>
<param name="contractName">
A <see cref="T:System.String"/> containing the contract name of the exported value to return,
or <see langword="null"/> or an empty string ("") to use the default contract name.
</param>
<returns>
The exported <see cref="T:System.Object"/> with the specified contract name.
</returns>
<remarks>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
<exception cref="T:System.ComponentModel.Composition.CompositionContractMismatchException">
The underlying exported value cannot be cast to <typeparamref name="T"/>.
</exception>
<exception cref="T:System.ComponentModel.Composition.ImportCardinalityMismatchException">
<para>
There are zero exported values with the specified contract name in the
<see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</para>
-or-
<para>
There are more than one exported values with the specified contract name in the
<see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</para>
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
</exception>
<exception cref="T:System.ComponentModel.Composition.CompositionException">
An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
contain a collection of errors that occurred.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExportedValueOrDefault``1">
<summary>
Returns the exported value with the contract name derived from the specified type
parameter, throwing an exception if there is more than one matching exported value.
</summary>
<typeparam name="T">
The type of the exported value to return. The contract name is also
derived from this type parameter.
</typeparam>
<returns>
The exported <see cref="T:System.Object"/> with the contract name derived from
<typeparamref name="T"/>, if found; otherwise, the default value for
<typeparamref name="T"/>.
</returns>
<remarks>
<para>
If the exported value is not found, then this method returns the appropriate
default value for <typeparamref name="T"/>; for example, 0 (zero) for integer
types, <see langword="false"/> for Boolean types, and <see langword="null"/>
for reference types.
</para>
<para>
The contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
<exception cref="T:System.ComponentModel.Composition.CompositionContractMismatchException">
The underlying exported value cannot be cast to <typeparamref name="T"/>.
</exception>
<exception cref="T:System.ComponentModel.Composition.ImportCardinalityMismatchException">
<para>
There are more than one exported values with the contract name derived from
<typeparamref name="T"/> in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</para>
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
</exception>
<exception cref="T:System.ComponentModel.Composition.CompositionException">
An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
contain a collection of errors that occurred.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExportedValueOrDefault``1(System.String)">
<summary>
Returns the exported value with the specified contract name, throwing an exception
if there is more than one matching exported value.
</summary>
<typeparam name="T">
The type of the exported value to return.
</typeparam>
<param name="contractName">
A <see cref="T:System.String"/> containing the contract name of the exported value to return,
or <see langword="null"/> or an empty string ("") to use the default contract name.
</param>
<returns>
The exported <see cref="T:System.Object"/> with the specified contract name, if found;
otherwise, the default value for <typeparamref name="T"/>.
</returns>
<remarks>
<para>
If the exported value is not found, then this method returns the appropriate
default value for <typeparamref name="T"/>; for example, 0 (zero) for integer
types, <see langword="false"/> for Boolean types, and <see langword="null"/>
for reference types.
</para>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
<exception cref="T:System.ComponentModel.Composition.CompositionContractMismatchException">
The underlying exported value cannot be cast to <typeparamref name="T"/>.
</exception>
<exception cref="T:System.ComponentModel.Composition.ImportCardinalityMismatchException">
There are more than one exported values with the specified contract name in the
<see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
</exception>
<exception cref="T:System.ComponentModel.Composition.CompositionException">
An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
contain a collection of errors that occurred.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExportedValues``1">
<summary>
Returns the exported values with the contract name derived from the specified type
parameter.
</summary>
<typeparam name="T">
The type of the exported value to return. The contract name is also
derived from this type parameter.
</typeparam>
<returns>
An <see cref="T:System.Collections.ObjectModel.Collection`1"/> containing the exported values with the contract name
derived from the specified type parameter, if found; otherwise, an empty
<see cref="T:System.Collections.ObjectModel.Collection`1"/>.
</returns>
<remarks>
<para>
The contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
<exception cref="T:System.ComponentModel.Composition.CompositionContractMismatchException">
One or more of the underlying exported values cannot be cast to
<typeparamref name="T"/>.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
</exception>
<exception cref="T:System.ComponentModel.Composition.CompositionException">
An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
contain a collection of errors that occurred.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExportedValues``1(System.String)">
<summary>
Returns the exported values with the specified contract name.
</summary>
<typeparam name="T">
The type of the exported value to return.
</typeparam>
<param name="contractName">
A <see cref="T:System.String"/> containing the contract name of the exported values to
return; or <see langword="null"/> or an empty string ("") to use the default
contract name.
</param>
<returns>
An <see cref="T:System.Collections.ObjectModel.Collection`1"/> containing the exported values with the specified
contract name, if found; otherwise, an empty <see cref="T:System.Collections.ObjectModel.Collection`1"/>.
</returns>
<remarks>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on <typeparamref name="T"/>.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
<exception cref="T:System.ComponentModel.Composition.CompositionContractMismatchException">
One or more of the underlying exported values cannot be cast to
<typeparamref name="T"/>.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
</exception>
<exception cref="T:System.ComponentModel.Composition.CompositionException">
An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
contain a collection of errors that occurred.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> class.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports(System.ComponentModel.Composition.Primitives.ImportDefinition)">
<summary>
Returns all exports that match the conditions of the specified import.
</summary>
<param name="definition">
The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects to get.
</param>
<result>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match
the conditions defined by <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, if found; otherwise, an
empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</result>
<exception cref="T:System.ArgumentNullException">
<paramref name="definition"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ComponentModel.Composition.ImportCardinalityMismatchException">
<para>
<see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/> is <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne"/> and
there are zero <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match the conditions of the specified
<see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
</para>
-or-
<para>
<see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/> is <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ZeroOrOne"/> or
<see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne"/> and there are more than one <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>
objects that match the conditions of the specified <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
</para>
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports(System.ComponentModel.Composition.Primitives.ImportDefinition,System.ComponentModel.Composition.Hosting.AtomicComposition)">
<summary>
Returns all exports that match the conditions of the specified import.
</summary>
<param name="definition">
The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects to get.
</param>
<result>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match
the conditions defined by <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, if found; otherwise, an
empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</result>
<exception cref="T:System.ArgumentNullException">
<paramref name="definition"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ComponentModel.Composition.ImportCardinalityMismatchException">
<para>
<see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/> is <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne"/> and
there are zero <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match the conditions of the specified
<see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
</para>
-or-
<para>
<see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/> is <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ZeroOrOne"/> or
<see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne"/> and there are more than one <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>
objects that match the conditions of the specified <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
</para>
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.TryGetExports(System.ComponentModel.Composition.Primitives.ImportDefinition,System.ComponentModel.Composition.Hosting.AtomicComposition,System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Primitives.Export}@)">
<summary>
Returns all exports that match the conditions of the specified import.
</summary>
<param name="definition">
The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects to get.
</param>
<param name="exports">
When this method returns, contains an <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>
objects that match the conditions defined by <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, if found;
otherwise, an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</param>
<returns>
<see langword="true"/> if <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/> is
<see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ZeroOrOne"/> or <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ZeroOrMore"/> and
there are zero <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match the conditions of the specified
<see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>. <see langword="true"/> if
<see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/> is <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ZeroOrOne"/> or
<see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne"/> and there is exactly one <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>
that matches the conditions of the specified <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>; otherwise,
<see langword="false"/>.
</returns>
<exception cref="T:System.ArgumentNullException">
<paramref name="definition"/> is <see langword="null"/>.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExportsCore(System.ComponentModel.Composition.Primitives.ImportDefinition,System.ComponentModel.Composition.Hosting.AtomicComposition)">
<summary>
Returns all exports that match the constraint defined by the specified definition.
</summary>
<param name="definition">
The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects to return.
</param>
<result>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match
the conditions defined by <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, if found; otherwise, an
empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</result>
<remarks>
<note type="inheritinfo">
Overriders of this method should not treat cardinality-related mismatches
as errors, and should not throw exceptions in those cases. For instance,
if <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/> is <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne"/>
and there are zero <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match the conditions of the
specified <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, an <see cref="T:System.Collections.Generic.IEnumerable`1"/> should be returned.
</note>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.OnExportsChanged(System.ComponentModel.Composition.Hosting.ExportsChangeEventArgs)">
<summary>
Raises the <see cref="E:System.ComponentModel.Composition.Hosting.ExportProvider.ExportsChanged"/> event.
</summary>
<param name="e">
An <see cref="T:System.ComponentModel.Composition.Hosting.ExportsChangeEventArgs"/> containing the data for the event.
</param>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportProvider.OnExportsChanging(System.ComponentModel.Composition.Hosting.ExportsChangeEventArgs)">
<summary>
Raises the <see cref="E:System.ComponentModel.Composition.Hosting.ExportProvider.ExportsChanging"/> event.
</summary>
<param name="e">
An <see cref="T:System.ComponentModel.Composition.Hosting.ExportsChangeEventArgs"/> containing the data for the event.
</param>
</member>
<member name="E:System.ComponentModel.Composition.Hosting.ExportProvider.ExportsChanged">
<summary>
Occurs when the exports in the <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> have changed.
</summary>
</member>
<member name="E:System.ComponentModel.Composition.Hosting.ExportProvider.ExportsChanging">
<summary>
Occurs when the exports in the <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> are changing.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CatalogExportProvider.#ctor(System.ComponentModel.Composition.Primitives.ComposablePartCatalog)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/> class.
</summary>
<param name="catalog">
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> that the <see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/>
uses to produce <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="catalog"/> is <see langword="null"/>.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CatalogExportProvider.Dispose">
<summary>
Releases unmanaged and - optionally - managed resources
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CatalogExportProvider.Dispose(System.Boolean)">
<summary>
Releases unmanaged and - optionally - managed resources
</summary>
<param name="disposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CatalogExportProvider.GetExportsCore(System.ComponentModel.Composition.Primitives.ImportDefinition,System.ComponentModel.Composition.Hosting.AtomicComposition)">
<summary>
Returns all exports that match the conditions of the specified import.
</summary>
<param name="definition">The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/> to get.</param>
<returns></returns>
<result>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match
the conditions defined by <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, if found; otherwise, an
empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</result>
<remarks>
<note type="inheritinfo">
The implementers should not treat the cardinality-related mismatches as errors, and are not
expected to throw exceptions in those cases.
For instance, if the import requests exactly one export and the provider has no matching exports or more than one,
it should return an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
</note>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CatalogExportProvider.EnsureCanRun">
<summary>
EnsureCanRun must be called from within a lock.
</summary>
</member>
<!-- Badly formed XML comment ignored for member "M:System.ComponentModel.Composition.Hosting.CatalogExportProvider.EnsureCanSet``1(``0)" -->
<member name="P:System.ComponentModel.Composition.Hosting.CatalogExportProvider.Catalog">
<summary>
Gets the composable part catalog that the provider users to
produce exports.
</summary>
<value>
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> that the
<see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/>
uses to produce <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects.
</value>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
</exception>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.CatalogExportProvider.SourceProvider">
<summary>
Gets the export provider which provides the provider access to additional
exports.
</summary>
<value>
The <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> which provides the
<see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/> access to additional
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects. The default is <see langword="null"/>.
</value>
<exception cref="T:System.ArgumentNullException">
<paramref name="value"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.InvalidOperationException">
This property has already been set.
<para>
-or-
</para>
The methods on the <see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/>
have already been accessed.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/> has been disposed of.
</exception>
<remarks>
This property must be set before accessing any methods on the
<see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/>.
</remarks>
</member>
<member name="T:System.ComponentModel.Composition.Primitives.Export">
<summary>
Represents an export. That is, a type that is made up of a delay-created exported value
and metadata that describes that object.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.Export.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> class.
</summary>
<remarks>
<note type="inheritinfo">
Derived types calling this constructor must override <see cref="P:System.ComponentModel.Composition.Primitives.Export.Definition"/>
and <see cref="M:System.ComponentModel.Composition.Primitives.Export.GetExportedValueCore"/>.
</note>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.Export.#ctor(System.String,System.Func{System.Object})">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> class
with the specified contract name and exported value getter.
</summary>
<param name="contractName">
A <see cref="T:System.String"/> containing the contract name of the
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
</param>
<param name="exportedValueGetter">
A <see cref="T:System.Func`1"/> that is called to create the exported value of the
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/>. This allows the creation of the object to be delayed
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="contractName"/> is <see langword="null"/>.
<para>
-or-
</para>
<paramref name="exportedValueGetter"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="contractName"/> is an empty string ("").
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.Export.#ctor(System.String,System.Collections.Generic.IDictionary{System.String,System.Object},System.Func{System.Object})">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> class
with the specified contract name, metadata and exported value getter.
</summary>
<param name="contractName">
A <see cref="T:System.String"/> containing the contract name of the
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
</param>
<param name="metadata">
An <see cref="T:System.Collections.Generic.IDictionary`2"/> containing the metadata of the
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/>; or <see langword="null"/> to set the
<see cref="P:System.ComponentModel.Composition.Primitives.Export.Metadata"/> property to an empty, read-only
<see cref="T:System.Collections.Generic.IDictionary`2"/>.
</param>
<param name="exportedValueGetter">
A <see cref="T:System.Func`1"/> that is called to create the exported value of the
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/>. This allows the creation of the object to be delayed.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="contractName"/> is <see langword="null"/>.
<para>
-or-
</para>
<paramref name="exportedValueGetter"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="contractName"/> is an empty string ("").
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.Export.#ctor(System.ComponentModel.Composition.Primitives.ExportDefinition,System.Func{System.Object})">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> class
with the specified export definition and exported value getter.
</summary>
<param name="definition">
An <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> that describes the contract that the
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/> satisfies.
</param>
<param name="exportedValueGetter">
A <see cref="T:System.Func`1"/> that is called to create the exported value of the
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/>. This allows the creation of the object to be delayed.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="definition"/> is <see langword="null"/>.
<para>
-or-
</para>
<paramref name="exportedValueGetter"/> is <see langword="null"/>.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.Export.GetExportedValueCore">
<summary>
Returns the exported value of the export.
</summary>
<returns>
The exported <see cref="T:System.Object"/> of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
</returns>
<exception cref="T:System.ComponentModel.Composition.CompositionException">
An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
contain a collection of errors that occurred.
</exception>
<exception cref="T:System.ComponentModel.Composition.CompositionContractMismatchException">
The current instance is an instance of <see cref="T:System.Lazy`1"/> and the underlying
exported value cannot be cast to <c>T</c>.
</exception>
<exception cref="T:System.NotImplementedException">
The method was not overridden by a derived class.
</exception>
<remarks>
<note type="inheritinfo">
Overriders of this method should never return
<see langword="null"/>.
</note>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.Export.Definition">
<summary>
Gets the definition that describes the contract that the export satisfies.
</summary>
<value>
An <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> that describes the contract that
the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> satisfies.
</value>
<exception cref="T:System.NotImplementedException">
This property was not overridden by a derived class.
</exception>
<remarks>
<note type="inheritinfo">
Overriders of this property should never return
<see langword="null"/>.
</note>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.Export.Metadata">
<summary>
Gets the metadata of the export.
</summary>
<value>
An <see cref="T:System.Collections.Generic.IDictionary`2"/> containing the metadata of the
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
</value>
<exception cref="T:System.NotImplementedException">
The <see cref="P:System.ComponentModel.Composition.Primitives.Export.Definition"/> property was not overridden by a derived class.
</exception>
<remarks>
<para>
This property returns the value of <see cref="P:System.ComponentModel.Composition.Primitives.ExportDefinition.Metadata"/>
of the <see cref="P:System.ComponentModel.Composition.Primitives.Export.Definition"/> property.
</para>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.Export.Value">
<summary>
Returns the exported value of the export.
</summary>
<returns>
The exported <see cref="T:System.Object"/> of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
</returns>
<exception cref="T:System.ComponentModel.Composition.CompositionException">
An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
contain a collection of errors that occurred.
</exception>
<exception cref="T:System.ComponentModel.Composition.CompositionContractMismatchException">
The current instance is an instance of <see cref="T:System.Lazy`1"/> and the underlying
exported value cannot be cast to <c>T</c>.
</exception>
<exception cref="T:System.NotImplementedException">
The <see cref="M:System.ComponentModel.Composition.Primitives.Export.GetExportedValueCore"/> method was not overridden by a derived class.
</exception>
</member>
<member name="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog">
<summary>
Defines the <see langword="abstract"/> base class for composable part catalogs, which produce
and return <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects.
</summary>
<remarks>
This type is thread safe.
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ComposablePartCatalog.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> class.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ComposablePartCatalog.GetExports(System.ComponentModel.Composition.Primitives.ImportDefinition)">
<summary>
Returns the export definitions that match the constraint defined by the specified definition.
</summary>
<param name="definition">
The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the
<see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects to return.
</param>
<returns>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.Tuple`2"/> containing the
<see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects and their associated
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> for objects that match the constraint defined
by <paramref name="definition"/>.
</returns>
<exception cref="T:System.ArgumentNullException">
<paramref name="definition"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> has been disposed of.
</exception>
<remarks>
<note type="inheritinfo">
Overriders of this property should never return <see langword="null"/>, if no
<see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> match the conditions defined by
<paramref name="definition"/>, return an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</note>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ComposablePartCatalog.Dispose">
<summary>
Releases the unmanaged resources used by the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> and
optionally releases the managed resources.
</summary>
<param name="disposing">
<see langword="true"/> to release both managed and unmanaged resources;
<see langword="false"/> to release only unmanaged resources.
</param>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ComposablePartCatalog.Parts">
<summary>
Gets the part definitions of the catalog.
</summary>
<value>
A <see cref="T:System.Linq.IQueryable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects of the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/>.
</value>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> has been disposed of.
</exception>
<remarks>
<note type="inheritinfo">
Overriders of this property should never return <see langword="null"/>.
</note>
</remarks>
</member>
<member name="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition">
<summary>
Represents a contract name and metadata-based import
required by a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> object.
</summary>
</member>
<member name="T:System.ComponentModel.Composition.Primitives.ImportDefinition">
<summary>
Represents an import required by a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> object.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ImportDefinition.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> class.
</summary>
<remarks>
<note type="inheritinfo">
Derived types calling this constructor must override the <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Constraint"/>
property, and optionally, the <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/>, <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.IsPrerequisite"/>
and <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.IsRecomposable"/>
properties.
</note>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ImportDefinition.#ctor(System.Linq.Expressions.Expression{System.Func{System.ComponentModel.Composition.Primitives.ExportDefinition,System.Boolean}},System.String,System.ComponentModel.Composition.Primitives.ImportCardinality,System.Boolean,System.Boolean)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> class
with the specified constraint, cardinality, value indicating if the import
definition is recomposable and a value indicating if the import definition
is a prerequisite.
</summary>
<param name="constraint">
A <see cref="T:System.Linq.Expressions.Expression`1"/> containing a <see cref="T:System.Func`2"/>
that defines the conditions that must be matched for the <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>
to be satisfied by an <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
</param>
<param name="contractName">
The contract name of the export that this import is interested in. The contract name
property is used as guidance and not automatically enforced in the constraint. If
the contract name is a required in the constraint then it should be added to the constraint
by the caller of this constructor.
</param>
<param name="cardinality">
One of the <see cref="T:System.ComponentModel.Composition.Primitives.ImportCardinality"/> values indicating the
cardinality of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects required by the
<see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
</param>
<param name="isRecomposable">
<see langword="true"/> if the <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> can be satisfied
multiple times throughout the lifetime of a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>, otherwise,
<see langword="false"/>.
</param>
<param name="isPrerequisite">
<see langword="true"/> if the <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> is required to be
satisfied before a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> can start producing exported
objects; otherwise, <see langword="false"/>.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="constraint"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="cardinality"/> is not one of the <see cref="T:System.ComponentModel.Composition.Primitives.ImportCardinality"/>
values.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ImportDefinition.IsConstraintSatisfiedBy(System.ComponentModel.Composition.Primitives.ExportDefinition)">
<summary>
Executes of the constraint provided by the <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Constraint"/> property
against a given <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> to determine if this
<see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> can be satisfied by the given <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
</summary>
<param name="exportDefinition">
A definition for a <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> used to determine if it satisfies the
requirements for this <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
</param>
<returns>
<see langword="True"/> if the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> satisfies the requirements for
this <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, otherwise returns <see langword="False"/>.
</returns>
<remarks>
<note type="inheritinfo">
Overrides of this method can provide a more optimized execution of the
<see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Constraint"/> property but the result should remain consistent.
</note>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ImportDefinition.ToString">
<summary>
Returns a string representation of the import definition.
</summary>
<returns>
A <see cref="T:System.String"/> containing the value of the <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Constraint"/> property.
</returns>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ImportDefinition.ContractName">
<summary>
Gets the contract name of the export required by the import definition.
</summary>
<value>
A <see cref="T:System.String"/> containing the contract name of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>
required by the <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/>. This property should
return <see cref="F:System.String.Empty"/> for imports that do not require a specific
contract name.
</value>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality">
<summary>
Gets the cardinality of the exports required by the import definition.
</summary>
<value>
One of the <see cref="T:System.ComponentModel.Composition.Primitives.ImportCardinality"/> values indicating the
cardinality of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects required by the
<see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>. The default is
<see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne"/>
</value>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Constraint">
<summary>
Gets an expression that defines conditions that must be matched for the import
described by the import definition to be satisfied.
</summary>
<returns>
A <see cref="T:System.Linq.Expressions.Expression`1"/> containing a <see cref="T:System.Func`2"/>
that defines the conditions that must be matched for the
<see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> to be satisfied by an <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
</returns>
<exception cref="T:System.NotImplementedException">
The property was not overridden by a derived class.
</exception>
<remarks>
<note type="inheritinfo">
Overriders of this property should never return <see langword="null"/>.
</note>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ImportDefinition.IsPrerequisite">
<summary>
Gets a value indicating whether the import definition is required to be
satisfied before a part can start producing exported values.
</summary>
<value>
<see langword="true"/> if the <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> is required to be
satisfied before a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> can start producing exported
objects; otherwise, <see langword="false"/>. The default is <see langword="true"/>.
</value>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ImportDefinition.IsRecomposable">
<summary>
Gets a value indicating whether the import definition can be satisfied multiple times.
</summary>
<value>
<see langword="true"/> if the <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> can be satisfied
multiple times throughout the lifetime of a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>, otherwise,
<see langword="false"/>. The default is <see langword="false"/>.
</value>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/> class.
</summary>
<remarks>
<note type="inheritinfo">
Derived types calling this constructor can optionally override the
<see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.ContractName"/>, <see cref="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.RequiredTypeIdentity"/>,
<see cref="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.RequiredMetadata"/>, <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/>,
<see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.IsPrerequisite"/>, <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.IsRecomposable"/>
and <see cref="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.RequiredCreationPolicy"/> properties.
</note>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.#ctor(System.String,System.String,System.Collections.Generic.IEnumerable{System.Collections.Generic.KeyValuePair{System.String,System.Type}},System.ComponentModel.Composition.Primitives.ImportCardinality,System.Boolean,System.Boolean,System.ComponentModel.Composition.CreationPolicy)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/> class
with the specified contract name, required metadataq, cardinality, value indicating
if the import definition is recomposable and a value indicating if the import definition
is a prerequisite.
</summary>
<param name="contractName">
A <see cref="T:System.String"/> containing the contract name of the
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/> required by the <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/>.
</param>
<param name="requiredTypeIdentity">
The type identity of the export type expected. Use <see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetTypeIdentity(System.Type)"/>
to generate a type identity for a given type. If no specific type is required pass <see langword="null"/>.
</param>
<param name="requiredMetadata">
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.String"/> objects containing
the metadata names of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> required by the
<see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/>; or <see langword="null"/> to
set the <see cref="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.RequiredMetadata"/> property to an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</param>
<param name="cardinality">
One of the <see cref="T:System.ComponentModel.Composition.Primitives.ImportCardinality"/> values indicating the
cardinality of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects required by the
<see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/>.
</param>
<param name="isRecomposable">
<see langword="true"/> if the <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/> can be satisfied
multiple times throughout the lifetime of a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>, otherwise,
<see langword="false"/>.
</param>
<param name="isPrerequisite">
<see langword="true"/> if the <see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/> is required to be
satisfied before a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> can start producing exported
objects; otherwise, <see langword="false"/>.
</param>
<param name="requiredCreationPolicy">
A value indicating that the importer requires a specific <see cref="T:System.ComponentModel.Composition.CreationPolicy"/> for
the exports used to satisfy this import. If no specific <see cref="T:System.ComponentModel.Composition.CreationPolicy"/> is needed
pass the default <see cref="F:System.ComponentModel.Composition.CreationPolicy.Any"/>.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="contractName"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="contractName"/> is an empty string ("").
<para>
-or-
</para>
<paramref name="requiredMetadata"/> contains an element that is <see langword="null"/>.
<para>
-or-
</para>
<paramref name="cardinality"/> is not one of the <see cref="T:System.ComponentModel.Composition.Primitives.ImportCardinality"/>
values.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.IsConstraintSatisfiedBy(System.ComponentModel.Composition.Primitives.ExportDefinition)">
<summary>
Executes an optimized version of the contraint given by the <see cref="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.Constraint"/> property
</summary>
<param name="exportDefinition">
A definition for a <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> used to determine if it satisfies the
requirements for this <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
</param>
<returns>
<see langword="True"/> if the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> satisfies the requirements for
this <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, otherwise returns <see langword="False"/>.
</returns>
<remarks>
<note type="inheritinfo">
Overrides of this method can provide a more optimized execution of the
<see cref="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.Constraint"/> property but the result should remain consistent.
</note>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.RequiredTypeIdentity">
<summary>
The type identity of the export type expected.
</summary>
<value>
A <see cref="T:System.String"/> that is generated by <see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetTypeIdentity(System.Type)"/>
on the type that this import expects. If the value is <see langword="null"/> then this import
doesn't expect a particular type.
</value>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.RequiredMetadata">
<summary>
Gets the metadata names of the export required by the import definition.
</summary>
<value>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of pairs of metadata keys and types of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> required by the
<see cref="T:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition"/>. The default is an empty
<see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</value>
<remarks>
<note type="inheritinfo">
Overriders of this property should never return <see langword="null"/>
or return an <see cref="T:System.Collections.Generic.IEnumerable`1"/> that contains an element that is
<see langword="null"/>. If the definition does not contain required metadata,
return an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/> instead.
</note>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.RequiredCreationPolicy">
<summary>
Gets or sets a value indicating that the importer requires a specific
<see cref="T:System.ComponentModel.Composition.CreationPolicy"/> for the exports used to satisfy this import. T
</summary>
<value>
<see cref="F:System.ComponentModel.Composition.CreationPolicy.Any"/> - default value, used if the importer doesn't
require a specific <see cref="T:System.ComponentModel.Composition.CreationPolicy"/>.
<see cref="F:System.ComponentModel.Composition.CreationPolicy.Shared"/> - Requires that all exports used should be shared
by everyone in the container.
<see cref="F:System.ComponentModel.Composition.CreationPolicy.NonShared"/> - Requires that all exports used should be
non-shared in a container and thus everyone gets their own instance.
</value>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.Constraint">
<summary>
Gets an expression that defines conditions that must be matched for the import
described by the import definition to be satisfied.
</summary>
<returns>
A <see cref="T:System.Linq.Expressions.Expression`1"/> containing a <see cref="T:System.Func`2"/>
that defines the conditions that must be matched for the
<see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> to be satisfied by an <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
</returns>
<remarks>
<para>
This property returns an expression that defines conditions based on the
<see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.ContractName"/>, <see cref="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.RequiredTypeIdentity"/>,
<see cref="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.RequiredMetadata"/>, and <see cref="P:System.ComponentModel.Composition.Primitives.ContractBasedImportDefinition.RequiredCreationPolicy"/>
properties.
</para>
</remarks>
</member>
<member name="T:System.ComponentModel.Composition.Primitives.ICompositionElement">
<summary>
Represents an element that participates in composition.
</summary>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ICompositionElement.DisplayName">
<summary>
Gets the display name of the composition element.
</summary>
<value>
A <see cref="T:System.String"/> containing a human-readable display name of the <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/>.
</value>
<remarks>
<note type="implementnotes">
Implementors of this property should never return <see langword="null"/> or an empty
string ("").
</note>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ICompositionElement.Origin">
<summary>
Gets the composition element from which the current composition element
originated.
</summary>
<value>
A <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/> from which the current
<see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/> originated, or <see langword="null"/>
if the <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/> is the root composition element.
</value>
</member>
<member name="T:System.ComponentModel.Composition.Primitives.ImportCardinality">
<summary>
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"/>.
</summary>
</member>
<member name="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ZeroOrOne">
<summary>
Zero or one <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects are required by an <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
</summary>
</member>
<member name="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne">
<summary>
Exactly one <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> object is required by an <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
</summary>
</member>
<member name="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ZeroOrMore">
<summary>
Zero or more <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects are required by an <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
</summary>
</member>
<member name="T:System.ComponentModel.Composition.Primitives.ExportDefinition">
<summary>
Describes the contract that an <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> object satisfies.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ExportDefinition.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> class.
</summary>
<remarks>
<note type="inheritinfo">
Derived types calling this constructor must override <see cref="P:System.ComponentModel.Composition.Primitives.ExportDefinition.ContractName"/>
and optionally, <see cref="P:System.ComponentModel.Composition.Primitives.ExportDefinition.Metadata"/>. By default, <see cref="P:System.ComponentModel.Composition.Primitives.ExportDefinition.Metadata"/>
returns an empty, read-only dictionary.
</note>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ExportDefinition.#ctor(System.String,System.Collections.Generic.IDictionary{System.String,System.Object})">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> class with
the specified contract name and metadata.
</summary>
<param name="contractName">
A <see cref="T:System.String"/> containing the contract name of the
<see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/>.
</param>
<param name="metadata">
An <see cref="T:System.Collections.Generic.IDictionary`2"/> containing the metadata of the
<see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/>; or <see langword="null"/> to set the
<see cref="P:System.ComponentModel.Composition.Primitives.ExportDefinition.Metadata"/> property to an empty, read-only
<see cref="T:System.Collections.Generic.IDictionary`2"/>.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="contractName"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="contractName"/> is an empty string ("").
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ExportDefinition.ToString">
<summary>
Returns a string representation of the export definition.
</summary>
<returns>
A <see cref="T:System.String"/> containing the value of the <see cref="P:System.ComponentModel.Composition.Primitives.ExportDefinition.ContractName"/> property.
</returns>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ExportDefinition.ContractName">
<summary>
Gets the contract name of the export definition.
</summary>
<value>
A <see cref="T:System.String"/> containing the contract name of the
<see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/>.
</value>
<exception cref="T:System.NotImplementedException">
The property was not overridden by a derived class.
</exception>
<remarks>
<note type="inheritinfo">
Overriders of this property should never return <see langword="null"/>
or an empty string ("").
</note>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ExportDefinition.Metadata">
<summary>
Gets the metadata of the export definition.
</summary>
<value>
An <see cref="T:System.Collections.Generic.IDictionary`2"/> containing the metadata of the
<see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/>. The default is an empty, read-only
<see cref="T:System.Collections.Generic.IDictionary`2"/>.
</value>
<remarks>
<para>
<note type="inheritinfo">
Overriders of this property should return a read-only
<see cref="T:System.Collections.Generic.IDictionary`2"/> object with a case-sensitive,
non-linguistic comparer, such as <see cref="P:System.StringComparer.Ordinal"/>,
and should never return <see langword="null"/>.
If the <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> does not contain metadata
return an empty <see cref="T:System.Collections.Generic.IDictionary`2"/> instead.
</note>
</para>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CompositionServices.IsAtMostOne(System.ComponentModel.Composition.Primitives.ImportCardinality)">
<summary>
Returns a value indicating whether cardinality is
<see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ZeroOrOne"/> or
<see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne"/>.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CompositionBatch.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/> class.
</summary>
</member>
<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})">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/> class.
</summary>
<param name="partsToAdd">The parts to add.</param>
<param name="partsToRemove">The parts to remove.</param>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CompositionBatch.AddPart(System.ComponentModel.Composition.Primitives.ComposablePart)">
<summary>
Adds the specified part to the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>.
</summary>
<param name="part">
The part.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="part"/> is <see langword="null"/>.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CompositionBatch.RemovePart(System.ComponentModel.Composition.Primitives.ComposablePart)">
<summary>
Removes the specified part from the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>.
</summary>
<param name="part">
The part.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="part"/> is <see langword="null"/>.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CompositionBatch.AddExport(System.ComponentModel.Composition.Primitives.Export)">
<summary>
Adds the specified export to the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>.
</summary>
<param name="export">
The <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> to add to the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>.
</param>
<returns>
A <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> that can be used remove the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>
from the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionBatch"/>.
</returns>
<exception cref="T:System.ArgumentNullException">
<paramref name="export"/> is <see langword="null"/>.
</exception>
<remarks>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.CompositionBatch.PartsToAdd">
<summary>
Returns the collection of parts that will be added.
</summary>
<value>The parts to be added.</value>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.CompositionBatch.PartsToRemove">
<summary>
Returns the collection of parts that will be removed.
</summary>
<value>The parts to be removed.</value>
</member>
<member name="T:System.ComponentModel.Composition.Primitives.ComposablePart">
<summary>
Defines the <see langword="abstract"/> base class for composable parts, which
import and produce exported values.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ComposablePart.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> class.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ComposablePart.Activate">
<summary>
Called by the composition engine when all required imports on the part have been
satisfied.
</summary>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> has been disposed of.
</exception>
<exception cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException">
An error occurred activating the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ComposablePart.GetExportedValue(System.ComponentModel.Composition.Primitives.ExportDefinition)">
<summary>
Gets the exported value described by the specified definition.
</summary>
<param name="definition">
One of the <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects from the
<see cref="P:System.ComponentModel.Composition.Primitives.ComposablePart.ExportDefinitions"/> property describing the exported value
to return.
</param>
<returns>
The exported value described by <paramref name="definition"/>.
</returns>
<exception cref="T:System.ArgumentNullException">
<paramref name="definition"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="definition"/> did not originate from the <see cref="P:System.ComponentModel.Composition.Primitives.ComposablePart.ExportDefinitions"/>
property on the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
</exception>
<exception cref="T:System.InvalidOperationException">
One or more pre-requisite imports, indicated by <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.IsPrerequisite"/>,
have not been set.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> has been disposed of.
</exception>
<exception cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException">
An error occurred getting the exported value described by the <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/>.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ComposablePart.SetImport(System.ComponentModel.Composition.Primitives.ImportDefinition,System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Primitives.Export})">
<summary>
Sets the import described by the specified definition with the specified exports.
</summary>
<param name="definition">
One of the <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> objects from the
<see cref="P:System.ComponentModel.Composition.Primitives.ComposablePart.ImportDefinitions"/> property describing the import to be set.
</param>
<param name="exports">
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects of which
to set the import described by <paramref name="definition"/>.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="definition"/> is <see langword="null"/>.
<para>
-or-
</para>
<paramref name="exports"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="definition"/> did not originate from the <see cref="P:System.ComponentModel.Composition.Primitives.ComposablePart.ImportDefinitions"/>
property on the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
<para>
-or-
</para>
<paramref name="exports"/> contains an element that is <see langword="null"/>.
<para>
-or-
</para>
<paramref name="exports"/> is empty and <see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/> is
<see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne"/>.
<para>
-or-
</para>
<paramref name="exports"/> contains more than one element and
<see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.Cardinality"/> is <see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ZeroOrOne"/> or
<see cref="F:System.ComponentModel.Composition.Primitives.ImportCardinality.ExactlyOne"/>.
</exception>
<exception cref="T:System.InvalidOperationException">
<see cref="M:System.ComponentModel.Composition.Primitives.ComposablePart.Activate"/> has been previously called and
<see cref="P:System.ComponentModel.Composition.Primitives.ImportDefinition.IsRecomposable"/> is <see langword="false"/>.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> has been disposed of.
</exception>
<exception cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException">
An error occurred setting the import described by the <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>.
</exception>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ComposablePart.ExportDefinitions">
<summary>
Gets the export definitions that describe the exported values provided by the part.
</summary>
<value>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects describing
the exported values provided by the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
</value>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> has been disposed of.
</exception>
<remarks>
<para>
<note type="inheritinfo">
If the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> was created from a
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/>, this property should return the result of
<see cref="P:System.ComponentModel.Composition.Primitives.ComposablePartDefinition.ExportDefinitions"/>.
</note>
</para>
<para>
<note type="inheritinfo">
Overriders of this property should never return <see langword="null"/>.
If the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> does not have exports, return an empty
<see cref="T:System.Collections.Generic.IEnumerable`1"/> instead.
</note>
</para>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ComposablePart.ImportDefinitions">
<summary>
Gets the import definitions that describe the imports required by the part.
</summary>
<value>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> objects describing
the imports required by the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
</value>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> has been disposed of.
</exception>
<remarks>
<para>
<note type="inheritinfo">
If the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> was created from a
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/>, this property should return the result of
<see cref="P:System.ComponentModel.Composition.Primitives.ComposablePartDefinition.ImportDefinitions"/>.
</note>
</para>
<para>
<note type="inheritinfo">
Overrides of this property should never return <see langword="null"/>.
If the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> does not have imports, return an empty
<see cref="T:System.Collections.Generic.IEnumerable`1"/> instead.
</note>
</para>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ComposablePart.Metadata">
<summary>
Gets the metadata of the part.
</summary>
<value>
An <see cref="T:System.Collections.Generic.IDictionary`2"/> containing the metadata of the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>. The default is an empty, read-only
<see cref="T:System.Collections.Generic.IDictionary`2"/>.
</value>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> has been disposed of.
</exception>
<remarks>
<para>
<note type="inheritinfo">
If the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> was created from a
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/>, this property should return the result of
<see cref="P:System.ComponentModel.Composition.Primitives.ComposablePartDefinition.Metadata"/>.
</note>
</para>
<para>
<note type="inheritinfo">
Overriders of this property should return a read-only
<see cref="T:System.Collections.Generic.IDictionary`2"/> object with a case-sensitive,
non-linguistic comparer, such as <see cref="P:System.StringComparer.Ordinal"/>,
and should never return <see langword="null"/>. If the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> does not contain metadata, return an
empty <see cref="T:System.Collections.Generic.IDictionary`2"/> instead.
</note>
</para>
</remarks>
</member>
<member name="T:System.ComponentModel.Composition.Hosting.AggregateCatalog">
<summary>
A mutable collection of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/>s.
</summary>
<remarks>
This type is thread safe.
</remarks>
</member>
<member name="T:System.ComponentModel.Composition.Hosting.INotifyComposablePartCatalogChanged">
<summary>
Notifications when a ComposablePartCatalog changes.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.AggregateCatalog.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/> class.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.AggregateCatalog.#ctor(System.ComponentModel.Composition.Primitives.ComposablePartCatalog[])">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/> class
with the specified catalogs.
</summary>
<param name="catalogs">
An <see cref="T:System.Array"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> objects to add to the
<see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/>.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="catalogs"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="catalogs"/> contains an element that is <see langword="null"/>.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.AggregateCatalog.#ctor(System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Primitives.ComposablePartCatalog})">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/> class
with the specified catalogs.
</summary>
<param name="catalogs">
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> objects to add
to the <see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/>; or <see langword="null"/> to
create an <see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/> that is empty.
</param>
<exception cref="T:System.ArgumentException">
<paramref name="catalogs"/> contains an element that is <see langword="null"/>.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.AggregateCatalog.GetExports(System.ComponentModel.Composition.Primitives.ImportDefinition)">
<summary>
Returns the export definitions that match the constraint defined by the specified definition.
</summary>
<param name="definition">
The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the
<see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects to return.
</param>
<returns>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.Tuple`2"/> containing the
<see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects and their associated
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> for objects that match the constraint defined
by <paramref name="definition"/>.
</returns>
<exception cref="T:System.ArgumentNullException">
<paramref name="definition"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/> has been disposed of.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.AggregateCatalog.OnChanged(System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs)">
<summary>
Raises the <see cref="E:System.ComponentModel.Composition.Hosting.INotifyComposablePartCatalogChanged.Changed"/> event.
</summary>
<param name="e">
An <see cref="T:System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs"/> containing the data for the event.
</param>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.AggregateCatalog.OnChanging(System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs)">
<summary>
Raises the <see cref="E:System.ComponentModel.Composition.Hosting.INotifyComposablePartCatalogChanged.Changing"/> event.
</summary>
<param name="e">
An <see cref="T:System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs"/> containing the data for the event.
</param>
</member>
<member name="E:System.ComponentModel.Composition.Hosting.AggregateCatalog.Changed">
<summary>
Notify when the contents of the Catalog has changed.
</summary>
</member>
<member name="E:System.ComponentModel.Composition.Hosting.AggregateCatalog.Changing">
<summary>
Notify when the contents of the Catalog has changing.
</summary>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.AggregateCatalog.Parts">
<summary>
Gets the part definitions of the catalog.
</summary>
<value>
A <see cref="T:System.Linq.IQueryable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects of the
<see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/>.
</value>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/> has been disposed of.
</exception>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.AggregateCatalog.Catalogs">
<summary>
Gets the underlying catalogs of the catalog.
</summary>
<value>
An <see cref="T:System.Collections.Generic.ICollection`1"/> of underlying <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> objects
of the <see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/>.
</value>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.AggregateCatalog"/> has been disposed of.
</exception>
</member>
<member name="T:System.ComponentModel.Composition.ExportMetadataAttribute">
<summary>
Specifies metadata for a type, property, field, or method marked with the
<see cref="T:System.ComponentModel.Composition.ExportAttribute"/>.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.ExportMetadataAttribute.#ctor(System.String,System.Object)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportMetadataAttribute"/> with the
specified name and metadata value.
</summary>
<param name="name">
A <see cref="T:System.String"/> containing the name of the metadata value; or
<see langword="null"/> to set the <see cref="P:System.ComponentModel.Composition.ExportMetadataAttribute.Name"/> property to an empty
string ("").
</param>
<param name="value">
An <see cref="T:System.Object"/> containing the metadata value. This can be
<see langword="null"/>.
</param>
</member>
<member name="P:System.ComponentModel.Composition.ExportMetadataAttribute.Name">
<summary>
Gets the name of the metadata value.
</summary>
<value>
A <see cref="T:System.String"/> containing the name of the metadata value.
</value>
</member>
<member name="P:System.ComponentModel.Composition.ExportMetadataAttribute.Value">
<summary>
Gets the metadata value.
</summary>
<value>
An <see cref="T:System.Object"/> containing the metadata value.
</value>
</member>
<member name="T:System.ComponentModel.Composition.CompositionContractMismatchException">
<summary>
The exception that is thrown when the underlying exported value or metadata of an
<see cref="T:System.Lazy`1"/> or <see cref="T:System.Lazy`2"/> object cannot be
cast to <c>T</c> or <c>TMetadataView</c>, respectively.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.CompositionContractMismatchException.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionContractMismatchException"/> class.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.CompositionContractMismatchException.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionContractMismatchException"/> class
with the specified error message.
</summary>
<param name="message">
A <see cref="T:System.String"/> containing a message that describes the
<see cref="T:System.ComponentModel.Composition.CompositionContractMismatchException"/>; or <see langword="null"/> to set
the <see cref="P:System.Exception.Message"/> property to its default value.
</param>
</member>
<member name="M:System.ComponentModel.Composition.CompositionContractMismatchException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionContractMismatchException"/> class
with the specified error message and exception that is the cause of the
exception.
</summary>
<param name="message">
A <see cref="T:System.String"/> containing a message that describes the
<see cref="T:System.ComponentModel.Composition.CompositionContractMismatchException"/>; or <see langword="null"/> to set
the <see cref="P:System.Exception.Message"/> property to its default value.
</param>
<param name="innerException">
The <see cref="T:System.Exception"/> that is the underlying cause of the
<see cref="T:System.ComponentModel.Composition.CompositionContractMismatchException"/>; or <see langword="null"/> to set
the <see cref="P:System.Exception.InnerException"/> property to <see langword="null"/>.
</param>
</member>
<member name="M:System.ComponentModel.Composition.CompositionContractMismatchException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionContractMismatchException"/> class
with the specified serialization data.
</summary>
<param name="info">
The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
<see cref="T:System.ComponentModel.Composition.CompositionContractMismatchException"/>.
</param>
<param name="context">
The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="info"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.Runtime.Serialization.SerializationException">
<paramref name="info"/> is missing a required value.
</exception>
<exception cref="T:System.InvalidCastException">
<paramref name="info"/> contains a value that cannot be cast to the correct type.
</exception>
</member>
<member name="T:System.ComponentModel.Composition.ExportAttribute">
<summary>
Specifies that a type, property, field, or method provides a particular export.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.ExportAttribute.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportAttribute"/> class, exporting the
type or member marked with this attribute under the default contract name.
</summary>
<remarks>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on the type of the
property or field, or the type itself, that is marked with this attribute.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.ExportAttribute.#ctor(System.Type)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportAttribute"/> class, exporting the
type or member marked with this attribute under a contract name derived from the
specified type.
</summary>
<param name="contractType">
A <see cref="T:System.Type"/> of which to derive the contract name to export the type or
member marked with this attribute, under; or <see langword="null"/> to use the
default contract name.
</param>
<remarks>
<para>
The contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on
<paramref name="contractType"/>.
</para>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on the type of the
property or field, or the type itself, that is marked with this attribute.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.ExportAttribute.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportAttribute"/> class, exporting the
type or member marked with this attribute under the specified contract name.
</summary>
<param name="contractName">
A <see cref="T:System.String"/> containing the contract name to export the type or member
marked with this attribute, under; or <see langword="null"/> or an empty string
("") to use the default contract name.
</param>
<remarks>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on the property or field
type, or the type itself that this is marked with this attribute.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.ExportAttribute.#ctor(System.String,System.Type)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportAttribute"/> class, exporting the
type or member marked with this attribute under the specified contract name.
</summary>
<param name="contractName">
A <see cref="T:System.String"/> containing the contract name to export the type or member
marked with this attribute, under; or <see langword="null"/> or an empty string
("") to use the default contract name.
</param>
<param name="contractType">
A <see cref="T:System.Type"/> of which to derive the contract name to export the type or
member marked with this attribute, under; or <see langword="null"/> to use the
default contract name.
</param>
<remarks>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on the property or field
type, or the type itself that this is marked with this attribute.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.ExportAttribute.ContractName">
<summary>
Gets the contract name to export the type or member under.
</summary>
<value>
A <see cref="T:System.String"/> containing the contract name to export the type or member
marked with this attribute, under. The default value is an empty string ("").
</value>
</member>
<member name="P:System.ComponentModel.Composition.ExportAttribute.ContractType">
<summary>
Get the contract type that is exported by the member that this attribute is attached to.
</summary>
<value>
A <see cref="T:System.Type"/> of the export that is be provided. The default value is
<see langword="null"/> which means that the type will be obtained by looking at the type on
the member that this export is attached to.
</value>
</member>
<member name="T:System.ComponentModel.Composition.PartNotDiscoverableAttribute">
<summary>
Place on a type that should not be discovered as a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> in
a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/>.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.PartNotDiscoverableAttribute.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.PartNotDiscoverableAttribute"/> class.
</summary>
</member>
<member name="T:System.ComponentModel.Composition.CreationPolicy">
<summary>
Option placed on a type that controls when the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> creates
a new instance of a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
</summary>
</member>
<member name="F:System.ComponentModel.Composition.CreationPolicy.Any">
<summary>
Let the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> choose the most appropriate <see cref="T:System.ComponentModel.Composition.CreationPolicy"/>
for the part given the current context. This is the default <see cref="T:System.ComponentModel.Composition.CreationPolicy"/>, with
the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> choosing <see cref="F:System.ComponentModel.Composition.CreationPolicy.Shared"/> by default
unless the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> or importer requests <see cref="F:System.ComponentModel.Composition.CreationPolicy.NonShared"/>.
</summary>
</member>
<member name="F:System.ComponentModel.Composition.CreationPolicy.Shared">
<summary>
A single shared instance of the associated <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> will be created
by the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> and shared by all requestors.
</summary>
</member>
<member name="F:System.ComponentModel.Composition.CreationPolicy.NonShared">
<summary>
A new non-shared instance of the associated <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> will be created
by the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> for every requestor.
</summary>
</member>
<member name="T:System.ComponentModel.Composition.CompositionException">
<summary>
The exception that is thrown when one or more errors occur during composition in
a <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.CompositionException.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionException"/> class.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.CompositionException.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionException"/> class
with the specified error message.
</summary>
<param name="message">
A <see cref="T:System.String"/> containing a message that describes the
<see cref="T:System.ComponentModel.Composition.CompositionException"/>; or <see langword="null"/> to set
the <see cref="P:System.Exception.Message"/> property to its default value.
</param>
</member>
<member name="M:System.ComponentModel.Composition.CompositionException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionException"/> class
with the specified error message and exception that is the cause of the
exception.
</summary>
<param name="message">
A <see cref="T:System.String"/> containing a message that describes the
<see cref="T:System.ComponentModel.Composition.CompositionException"/>; or <see langword="null"/> to set
the <see cref="P:System.Exception.Message"/> property to its default value.
</param>
<param name="innerException">
The <see cref="T:System.Exception"/> that is the underlying cause of the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>; or <see langword="null"/> to set
the <see cref="P:System.Exception.InnerException"/> property to <see langword="null"/>.
</param>
</member>
<member name="M:System.ComponentModel.Composition.CompositionException.#ctor(System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.CompositionError})">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionException"/> class
with the specified errors.
</summary>
<param name="errors">
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.CompositionError"/> objects
representing the errors that are the cause of the
<see cref="T:System.ComponentModel.Composition.CompositionException"/>; or <see langword="null"/> to set the
<see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> property to an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</param>
<exception cref="T:System.ArgumentException">
<paramref name="errors"/> contains an element that is <see langword="null"/>.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.CompositionException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionException"/> class
with the specified serialization data.
</summary>
<param name="info">
The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
<see cref="T:System.ComponentModel.Composition.CompositionException"/>.
</param>
<param name="context">
The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="info"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.Runtime.Serialization.SerializationException">
<paramref name="info"/> is missing a required value.
</exception>
<exception cref="T:System.InvalidCastException">
<paramref name="info"/> contains a value that cannot be cast to the correct type.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.CompositionException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Gets the serialization data of the exception.
</summary>
<param name="info">
The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>.
</param>
<param name="context">
The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="info"/> is <see langword="null"/>.
</exception>
</member>
<member name="P:System.ComponentModel.Composition.CompositionException.Errors">
<summary>
Gets the errors that are the cause of the exception.
</summary>
<value>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.CompositionError"/> objects
representing the errors that are the cause of the
<see cref="T:System.ComponentModel.Composition.CompositionException"/>.
</value>
</member>
<member name="P:System.ComponentModel.Composition.CompositionException.Message">
<summary>
Gets a message that describes the exception.
</summary>
<value>
A <see cref="T:System.String"/> containing a message that describes the
<see cref="T:System.ComponentModel.Composition.CompositionException"/>.
</value>
</member>
<member name="T:System.ComponentModel.Composition.ChangeRejectedException">
<summary>
The exception that is thrown when one or more recoverable errors occur during
composition which results in those changes being rejected.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.ChangeRejectedException.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ChangeRejectedException"/> class.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.ChangeRejectedException.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ChangeRejectedException"/> class.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.ChangeRejectedException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ChangeRejectedException"/> class.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.ChangeRejectedException.#ctor(System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.CompositionError})">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ChangeRejectedException"/> class.
</summary>
<param name="errors">List of errors that occured while applying the changes.</param>
</member>
<member name="P:System.ComponentModel.Composition.ChangeRejectedException.Message">
<summary>
Gets a message that describes the exception.
</summary>
<value>
A <see cref="T:System.String"/> containing a message that describes the
<see cref="T:System.ComponentModel.Composition.ChangeRejectedException"/>.
</value>
</member>
<member name="T:System.ComponentModel.Composition.ImportManyAttribute">
<summary>
Specifies that a property, field, or parameter imports a particular set of exports.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.ImportManyAttribute.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ImportManyAttribute"/> class, importing the
set of exports with the default contract name.
</summary>
<remarks>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on the element\item type of
theproperty, field, or parameter type that this is marked with this attribute.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.ImportManyAttribute.#ctor(System.Type)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ImportManyAttribute"/> class, importing the
set of exports with the contract name derived from the specified type.
</summary>
<param name="contractType">
A <see cref="T:System.Type"/> of which to derive the contract name of the exports to import, or
<see langword="null"/> to use the default contract name.
</param>
<remarks>
<para>
The contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on
<paramref name="contractType"/>.
</para>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on the property, field,
or parameter type that is marked with this attribute.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.ImportManyAttribute.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ImportManyAttribute"/> class, importing the
set of exports with the specified contract name.
</summary>
<param name="contractName">
A <see cref="T:System.String"/> containing the contract name of the exports to import, or
<see langword="null"/> or an empty string ("") to use the default contract name.
</param>
<remarks>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on the property, field,
or parameter type that is marked with this attribute.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.ImportManyAttribute.ContractName">
<summary>
Gets the contract name of the exports to import.
</summary>
<value>
A <see cref="T:System.String"/> containing the contract name of the exports to import. The
default value is an empty string ("").
</value>
</member>
<member name="P:System.ComponentModel.Composition.ImportManyAttribute.ContractType">
<summary>
Get the contract type of the export to import.
</summary>
<value>
A <see cref="T:System.Type"/> of the export that this import is expecting. The default value is
<see langword="null"/> which means that the type will be obtained by looking at the type on
the member that this import is attached to. If the type is <see cref="T:System.Object"/> then the
importer is delaring they can accept any exported type.
</value>
</member>
<member name="P:System.ComponentModel.Composition.ImportManyAttribute.AllowRecomposition">
<summary>
Gets or sets a value indicating whether the property or field will be recomposed
when exports that provide the same contract that this import expects, have changed
in the container.
</summary>
<value>
<see langword="true"/> if the property or field allows for recomposition when exports
that provide the same <see cref="P:System.ComponentModel.Composition.ImportManyAttribute.ContractName"/> are added or removed from the
<see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>; otherwise, <see langword="false"/>.
The default value is <see langword="false"/>.
</value>
</member>
<member name="P:System.ComponentModel.Composition.ImportManyAttribute.RequiredCreationPolicy">
<summary>
Gets or sets a value indicating that the importer requires a specific
<see cref="T:System.ComponentModel.Composition.CreationPolicy"/> for the exports used to satisfy this import. T
</summary>
<value>
<see cref="F:System.ComponentModel.Composition.CreationPolicy.Any"/> - default value, used if the importer doesn't
require a specific <see cref="T:System.ComponentModel.Composition.CreationPolicy"/>.
<see cref="F:System.ComponentModel.Composition.CreationPolicy.Shared"/> - Requires that all exports used should be shared
by everyone in the container.
<see cref="F:System.ComponentModel.Composition.CreationPolicy.NonShared"/> - Requires that all exports used should be
non-shared in a container and thus everyone gets their own instance.
</value>
</member>
<member name="T:System.ComponentModel.Composition.ImportCardinalityMismatchException">
<summary>
The exception that is thrown when the cardinality of a <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>
does not match the cardinality of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects available in an
<see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/>.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.ImportCardinalityMismatchException.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ImportCardinalityMismatchException"/> class.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.ImportCardinalityMismatchException.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ImportCardinalityMismatchException"/> class
with the specified error message.
</summary>
<param name="message">
A <see cref="T:System.String"/> containing a message that describes the
<see cref="T:System.ComponentModel.Composition.ImportCardinalityMismatchException"/>; or <see langword="null"/> to set
the <see cref="P:System.Exception.Message"/> property to its default value.
</param>
</member>
<member name="M:System.ComponentModel.Composition.ImportCardinalityMismatchException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ImportCardinalityMismatchException"/> class
with the specified error message and exception that is the cause of the
exception.
</summary>
<param name="message">
A <see cref="T:System.String"/> containing a message that describes the
<see cref="T:System.ComponentModel.Composition.ImportCardinalityMismatchException"/>; or <see langword="null"/> to set
the <see cref="P:System.Exception.Message"/> property to its default value.
</param>
<param name="innerException">
The <see cref="T:System.Exception"/> that is the underlying cause of the
<see cref="T:System.ComponentModel.Composition.ImportCardinalityMismatchException"/>; or <see langword="null"/> to set
the <see cref="P:System.Exception.InnerException"/> property to <see langword="null"/>.
</param>
</member>
<member name="M:System.ComponentModel.Composition.ImportCardinalityMismatchException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ImportCardinalityMismatchException"/> class
with the specified serialization data.
</summary>
<param name="info">
The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
<see cref="T:System.ComponentModel.Composition.ImportCardinalityMismatchException"/>.
</param>
<param name="context">
The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="info"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.Runtime.Serialization.SerializationException">
<paramref name="info"/> is missing a required value.
</exception>
<exception cref="T:System.InvalidCastException">
<paramref name="info"/> contains a value that cannot be cast to the correct type.
</exception>
</member>
<member name="T:System.ComponentModel.Composition.Hosting.TypeCatalog">
<summary>
An immutable ComposablePartCatalog created from a type array or a list of managed types. This class is threadsafe.
It is Disposable.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.TypeCatalog.#ctor(System.Type[])">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.TypeCatalog"/> class
with the specified types.
</summary>
<param name="types">
An <see cref="T:System.Array"/> of attributed <see cref="T:System.Type"/> objects to add to the
<see cref="T:System.ComponentModel.Composition.Hosting.TypeCatalog"/>.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="types"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="types"/> contains an element that is <see langword="null"/>.
<para>
-or-
</para>
<paramref name="types"/> contains an element that was loaded in the Reflection-only context.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.TypeCatalog.#ctor(System.Collections.Generic.IEnumerable{System.Type})">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.TypeCatalog"/> class
with the specified types.
</summary>
<param name="types">
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of attributed <see cref="T:System.Type"/> objects to add
to the <see cref="T:System.ComponentModel.Composition.Hosting.TypeCatalog"/>.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="types"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="types"/> contains an element that is <see langword="null"/>.
<para>
-or-
</para>
<paramref name="types"/> contains an element that was loaded in the reflection-only context.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.TypeCatalog.GetExports(System.ComponentModel.Composition.Primitives.ImportDefinition)">
<summary>
Returns the export definitions that match the constraint defined by the specified definition.
</summary>
<param name="definition">
The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the
<see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects to return.
</param>
<returns>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.Tuple`2"/> containing the
<see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects and their associated
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> for objects that match the constraint defined
by <paramref name="definition"/>.
</returns>
<exception cref="T:System.ArgumentNullException">
<paramref name="definition"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> has been disposed of.
</exception>
<remarks>
<note type="inheritinfo">
Overriders of this property should never return <see langword="null"/>, if no
<see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> match the conditions defined by
<paramref name="definition"/>, return an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</note>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.TypeCatalog.ToString">
<summary>
Returns a string representation of the type catalog.
</summary>
<returns>
A <see cref="T:System.String"/> containing the string representation of the <see cref="T:System.ComponentModel.Composition.Hosting.TypeCatalog"/>.
</returns>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.TypeCatalog.Parts">
<summary>
Gets the part definitions of the catalog.
</summary>
<value>
A <see cref="T:System.Linq.IQueryable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects of the
<see cref="T:System.ComponentModel.Composition.Hosting.TypeCatalog"/>.
</value>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.TypeCatalog"/> has been disposed of.
</exception>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.TypeCatalog.System#ComponentModel#Composition#Primitives#ICompositionElement#DisplayName">
<summary>
Gets the display name of the type catalog.
</summary>
<value>
A <see cref="T:System.String"/> containing a human-readable display name of the <see cref="T:System.ComponentModel.Composition.Hosting.TypeCatalog"/>.
</value>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.TypeCatalog.System#ComponentModel#Composition#Primitives#ICompositionElement#Origin">
<summary>
Gets the composition element from which the type catalog originated.
</summary>
<value>
This property always returns <see langword="null"/>.
</value>
</member>
<member name="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition">
<summary>
Defines the <see langword="abstract"/> base class for composable part definitions, which
describe, and allow the creation of, <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> objects.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ComposablePartDefinition.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> class.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ComposablePartDefinition.CreatePart">
<summary>
Creates a new instance of a part that the definition describes.
</summary>
<returns>
The created <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
</returns>
<remarks>
<para>
<note type="inheritinfo">
Derived types overriding this method should return a new instance of a
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> on every invoke and should never return
<see langword="null"/>.
</note>
</para>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ComposablePartDefinition.ExportDefinitions">
<summary>
Gets the export definitions that describe the exported values provided by parts
created by the definition.
</summary>
<value>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects describing
the exported values provided by <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> objects created by the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/>.
</value>
<remarks>
<note type="inheritinfo">
Overrides of this property should never return <see langword="null"/>.
If the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> objects created by the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> do not provide exported values, return
an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/> instead.
</note>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ComposablePartDefinition.ImportDefinitions">
<summary>
Gets the import definitions that describe the imports required by parts created
by the definition.
</summary>
<value>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> objects describing
the imports required by <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> objects created by the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/>.
</value>
<remarks>
<note type="inheritinfo">
Overriders of this property should never return <see langword="null"/>.
If the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> objects created by the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> do not have imports, return an empty
<see cref="T:System.Collections.Generic.IEnumerable`1"/> instead.
</note>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ComposablePartDefinition.Metadata">
<summary>
Gets the metadata of the definition.
</summary>
<value>
An <see cref="T:System.Collections.Generic.IDictionary`2"/> containing the metadata of the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/>. The default is an empty, read-only
<see cref="T:System.Collections.Generic.IDictionary`2"/>.
</value>
<remarks>
<para>
<note type="inheritinfo">
Overriders of this property should return a read-only
<see cref="T:System.Collections.Generic.IDictionary`2"/> object with a case-sensitive,
non-linguistic comparer, such as <see cref="P:System.StringComparer.Ordinal"/>,
and should never return <see langword="null"/>. If the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> does contain metadata,
return an empty <see cref="T:System.Collections.Generic.IDictionary`2"/> instead.
</note>
</para>
</remarks>
</member>
<member name="T:System.ComponentModel.Composition.ICompositionService">
<summary>
Provides methods for composing <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> objects.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.ICompositionService.SatisfyImportsOnce(System.ComponentModel.Composition.Primitives.ComposablePart)">
<summary>
Sets the imports of the specified composable part exactly once and they will not
ever be recomposed.
</summary>
<param name="part">
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> to set the imports.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="part"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ComponentModel.Composition.CompositionException">
An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
contain a collection of errors that occurred.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.ICompositionService"/> has been disposed of.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ImportEngine.#ctor(System.ComponentModel.Composition.Hosting.ExportProvider)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.ImportEngine"/> class.
</summary>
<param name="sourceProvider">
The <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> which provides the
<see cref="T:System.ComponentModel.Composition.Hosting.ImportEngine"/> access to <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>s.
</param>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ImportEngine.PreviewImports(System.ComponentModel.Composition.Primitives.ComposablePart,System.ComponentModel.Composition.Hosting.AtomicComposition)">
<summary>
Previews all the required imports for the given <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> to
ensure they can all be satisified. The preview does not actually set the imports
only ensures that they exist in the source provider. If the preview succeeds then
the <see cref="T:System.ComponentModel.Composition.Hosting.ImportEngine"/> also enforces that changes to exports in the source
provider will not break any of the required imports. If this enforcement needs to be
lifted for this part then <see cref="M:System.ComponentModel.Composition.Hosting.ImportEngine.ReleaseImports(System.ComponentModel.Composition.Primitives.ComposablePart,System.ComponentModel.Composition.Hosting.AtomicComposition)"/> needs to be called for this
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
</summary>
<param name="part">
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> to preview the required imports.
</param>
<param name="atomicComposition"></param>
<exception cref="T:System.ComponentModel.Composition.CompositionException">
An error occurred during previewing and <paramref name="atomicComposition"/> is null.
<see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will contain a collection of errors that occurred.
The pre-existing composition is in an unknown state, depending on the errors that occured.
</exception>
<exception cref="T:System.ComponentModel.Composition.ChangeRejectedException">
An error occurred during the previewing and <paramref name="atomicComposition"/> is not null.
<see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will contain a collection of errors that occurred.
The pre-existing composition remains in valid state.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.ImportEngine"/> has been disposed of.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ImportEngine.SatisfyImports(System.ComponentModel.Composition.Primitives.ComposablePart)">
<summary>
Satisfies the imports of the specified composable part. If the satisfy succeeds then
the <see cref="T:System.ComponentModel.Composition.Hosting.ImportEngine"/> also enforces that changes to exports in the source
provider will not break any of the required imports. If this enforcement needs to be
lifted for this part then <see cref="M:System.ComponentModel.Composition.Hosting.ImportEngine.ReleaseImports(System.ComponentModel.Composition.Primitives.ComposablePart,System.ComponentModel.Composition.Hosting.AtomicComposition)"/> needs to be called for this
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
</summary>
<param name="part">
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> to set the imports.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="part"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ComponentModel.Composition.CompositionException">
An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
contain a collection of errors that occurred.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.ImportEngine"/> has been disposed of.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ImportEngine.SatisfyImportsOnce(System.ComponentModel.Composition.Primitives.ComposablePart)">
<summary>
Sets the imports of the specified composable part exactly once and they will not
ever be recomposed.
</summary>
<param name="part">
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> to set the imports.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="part"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ComponentModel.Composition.CompositionException">
An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
contain a collection of errors that occurred.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.ICompositionService"/> has been disposed of.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ImportEngine.ReleaseImports(System.ComponentModel.Composition.Primitives.ComposablePart,System.ComponentModel.Composition.Hosting.AtomicComposition)">
<summary>
Removes any state stored in the <see cref="T:System.ComponentModel.Composition.Hosting.ImportEngine"/> for the associated
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> and releases all the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>s used to
satisfy the imports on the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
Also removes the enforcement for changes that would break a required import on
<paramref name="part"/>.
</summary>
<param name="part">
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> to release the imports on.
</param>
<param name="atomicComposition">
The <see cref="T:System.ComponentModel.Composition.Hosting.AtomicComposition"/> that the release imports is running under.
</param>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ImportEngine.Dispose">
<summary>
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ImportEngine.Dispose(System.Boolean)">
<summary>
Releases unmanaged and - optionally - managed resources
</summary>
<param name="disposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
</member>
<member name="T:System.ComponentModel.Composition.Hosting.ImportEngine.PartManager">
<summary>
Used by the <see cref="T:System.ComponentModel.Composition.Hosting.ImportEngine"/> to manage the composition of a given part.
It stores things like the list of disposable exports used to satisfy the imports as
well as the caching of the exports discovered during previewing of a part.
</summary>
</member>
<member name="T:System.ComponentModel.Composition.Hosting.ImportEngine.RecompositionManager">
<summary>
Used by the <see cref="T:System.ComponentModel.Composition.Hosting.ImportEngine"/> to effiecently store and retrieve the list of parts
that will be affected by changes to exports. This allows the <see cref="T:System.ComponentModel.Composition.Hosting.ImportEngine"/> to properly
block breaking changes and also recompose imports as appropriate.
</summary>
</member>
<member name="T:System.ComponentModel.Composition.Hosting.ImportEngine.EngineContext">
<summary>
Used to wrap the start and stop of enforcing export changes don't
break required imports. This context is stored in a AtomicComposition.
</summary>
</member>
<member name="T:System.ComponentModel.Composition.ImportAttribute">
<summary>
Specifies that a property, field, or parameter imports a particular export.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.ImportAttribute.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ImportAttribute"/> class, importing the
export with the default contract name.
</summary>
<remarks>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on the property, field,
or parameter type that this is marked with this attribute.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.ImportAttribute.#ctor(System.Type)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ImportAttribute"/> class, importing the
export with the contract name derived from the specified type.
</summary>
<param name="contractType">
A <see cref="T:System.Type"/> of which to derive the contract name of the export to import, or
<see langword="null"/> to use the default contract name.
</param>
<remarks>
<para>
The contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on
<paramref name="contractType"/>.
</para>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on the property, field,
or parameter type that is marked with this attribute.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.ImportAttribute.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ImportAttribute"/> class, importing the
export with the specified contract name.
</summary>
<param name="contractName">
A <see cref="T:System.String"/> containing the contract name of the export to import, or
<see langword="null"/> or an empty string ("") to use the default contract name.
</param>
<remarks>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on the property, field,
or parameter type that is marked with this attribute.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.ImportAttribute.ContractName">
<summary>
Gets the contract name of the export to import.
</summary>
<value>
A <see cref="T:System.String"/> containing the contract name of the export to import. The
default value is an empty string ("").
</value>
</member>
<member name="P:System.ComponentModel.Composition.ImportAttribute.ContractType">
<summary>
Get the contract type of the export to import.
</summary>
<value>
A <see cref="T:System.Type"/> of the export that this import is expecting. The default value is
<see langword="null"/> which means that the type will be obtained by looking at the type on
the member that this import is attached to. If the type is <see cref="T:System.Object"/> then the
importer is delaring they can accept any exported type.
</value>
</member>
<member name="P:System.ComponentModel.Composition.ImportAttribute.AllowDefault">
<summary>
Gets or sets a value indicating whether the property, field or parameter will be set
to its type's default value when an export with the contract name is not present in
the container.
</summary>
<value>
<see langword="true"/> if the property, field or parameter will be set
its type's default value when an export with the <see cref="P:System.ComponentModel.Composition.ImportAttribute.ContractName"/> is not
present in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>; otherwise, <see langword="false"/>.
The default value is <see langword="false"/>.
</value>
<remarks>
<para>
The default value of a property's, field's or parameter's type is
<see langword="null"/> for reference types and 0 for numeric value types. For
other value types, the default value will be each field of the value type
initialized to zero, if the field is a value type or <see langword="null"/> if
the field is a reference type.
</para>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.ImportAttribute.AllowRecomposition">
<summary>
Gets or sets a value indicating whether the property or field will be recomposed
when exports that provide the same contract that this import expects, have changed
in the container.
</summary>
<value>
<see langword="true"/> if the property or field allows for recomposition when exports
that provide the same <see cref="P:System.ComponentModel.Composition.ImportAttribute.ContractName"/> are added or removed from the
<see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>; otherwise, <see langword="false"/>.
The default value is <see langword="false"/>.
</value>
</member>
<member name="P:System.ComponentModel.Composition.ImportAttribute.RequiredCreationPolicy">
<summary>
Gets or sets a value indicating that the importer requires a specific
<see cref="T:System.ComponentModel.Composition.CreationPolicy"/> for the exports used to satisfy this import. T
</summary>
<value>
<see cref="F:System.ComponentModel.Composition.CreationPolicy.Any"/> - default value, used if the importer doesn't
require a specific <see cref="T:System.ComponentModel.Composition.CreationPolicy"/>.
<see cref="F:System.ComponentModel.Composition.CreationPolicy.Shared"/> - Requires that all exports used should be shared
by everyone in the container.
<see cref="F:System.ComponentModel.Composition.CreationPolicy.NonShared"/> - Requires that all exports used should be
non-shared in a container and thus everyone gets their own instance.
</value>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider"/> class.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider.Dispose">
<summary>
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider.Dispose(System.Boolean)">
<summary>
Releases unmanaged and - optionally - managed resources
</summary>
<param name="disposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider.GetExportsCore(System.ComponentModel.Composition.Primitives.ImportDefinition,System.ComponentModel.Composition.Hosting.AtomicComposition)">
<summary>
Returns all exports that match the conditions of the specified import.
</summary>
<param name="definition">The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/> to get.</param>
<returns></returns>
<result>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match
the conditions defined by <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, if found; otherwise, an
empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</result>
<remarks>
<note type="inheritinfo">
The implementers should not treat the cardinality-related mismatches as errors, and are not
expected to throw exceptions in those cases.
For instance, if the import requests exactly one export and the provider has no matching exports or more than one,
it should return an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
</note>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider.SourceProvider">
<summary>
Gets the export provider which provides the provider access to
exports.
</summary>
<value>
The <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> which provides the
<see cref="T:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider"/> access to <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects.
The default is <see langword="null"/>.
</value>
<exception cref="T:System.ArgumentNullException">
<paramref name="value"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.InvalidOperationException">
This property has already been set.
<para>
-or-
</para>
The methods on the <see cref="T:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider"/>
have already been accessed.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider"/> has been disposed of.
</exception>
<remarks>
This property must be set before accessing any methods on the
<see cref="T:System.ComponentModel.Composition.Hosting.ComposablePartExportProvider"/>.
</remarks>
</member>
<member name="T:System.ComponentModel.Composition.CompositionError">
<summary>
Represents an error that occurs during composition in a <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.CompositionError.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionError"/> class
with the specified error message.
</summary>
<param name="message">
A <see cref="T:System.String"/> containing a message that describes the
<see cref="T:System.ComponentModel.Composition.CompositionError"/>; or <see langword="null"/> to set the
<see cref="P:System.ComponentModel.Composition.CompositionError.Description"/> property to an empty string ("").
</param>
</member>
<member name="M:System.ComponentModel.Composition.CompositionError.#ctor(System.String,System.ComponentModel.Composition.Primitives.ICompositionElement)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionError"/> class
with the specified error message and composition element that is the
cause of the composition error.
</summary>
<param name="element">
The <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/> that is the cause of the
<see cref="T:System.ComponentModel.Composition.CompositionError"/>; or <see langword="null"/> to set
the <see cref="P:System.ComponentModel.Composition.CompositionError.Element"/> property to
<see langword="null"/>.
</param>
<param name="message">
A <see cref="T:System.String"/> containing a message that describes the
<see cref="T:System.ComponentModel.Composition.CompositionError"/>; or <see langword="null"/> to set the
<see cref="P:System.ComponentModel.Composition.CompositionError.Description"/> property to an empty string ("").
</param>
</member>
<member name="M:System.ComponentModel.Composition.CompositionError.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionError"/> class
with the specified error message and exception that is the cause of the
composition error.
</summary>
<param name="message">
A <see cref="T:System.String"/> containing a message that describes the
<see cref="T:System.ComponentModel.Composition.CompositionError"/>; or <see langword="null"/> to set the
<see cref="P:System.ComponentModel.Composition.CompositionError.Description"/> property to an empty string ("").
</param>
<param name="exception">
The <see cref="P:System.ComponentModel.Composition.CompositionError.Exception"/> that is the underlying cause of the
<see cref="T:System.ComponentModel.Composition.CompositionError"/>; or <see langword="null"/> to set
the <see cref="P:System.ComponentModel.Composition.CompositionError.Exception"/> property to <see langword="null"/>.
</param>
</member>
<member name="M:System.ComponentModel.Composition.CompositionError.#ctor(System.String,System.ComponentModel.Composition.Primitives.ICompositionElement,System.Exception)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionError"/> class
with the specified error message, and composition element and exception that
is the cause of the composition error.
</summary>
<param name="message">
A <see cref="T:System.String"/> containing a message that describes the
<see cref="T:System.ComponentModel.Composition.CompositionError"/>; or <see langword="null"/> to set the
<see cref="P:System.ComponentModel.Composition.CompositionError.Description"/> property to an empty string ("").
</param>
<param name="element">
The <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/> that is the cause of the
<see cref="T:System.ComponentModel.Composition.CompositionError"/>; or <see langword="null"/> to set
the <see cref="P:System.ComponentModel.Composition.CompositionError.Element"/> property to
<see langword="null"/>.
</param>
<param name="exception">
The <see cref="P:System.ComponentModel.Composition.CompositionError.Exception"/> that is the underlying cause of the
<see cref="T:System.ComponentModel.Composition.CompositionError"/>; or <see langword="null"/> to set
the <see cref="P:System.ComponentModel.Composition.CompositionError.Exception"/> property to <see langword="null"/>.
</param>
</member>
<member name="M:System.ComponentModel.Composition.CompositionError.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.CompositionError"/> class
with the specified serialization data.
</summary>
<param name="info">
The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
<see cref="T:System.ComponentModel.Composition.CompositionError"/>.
</param>
<param name="context">
The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="info"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.Runtime.Serialization.SerializationException">
<paramref name="info"/> is missing a required value.
</exception>
<exception cref="T:System.InvalidCastException">
<paramref name="info"/> contains a value that cannot be cast to the correct type.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.CompositionError.ToString">
<summary>
Returns a string representation of the composition error.
</summary>
<returns>
A <see cref="T:System.String"/> containing the <see cref="P:System.ComponentModel.Composition.CompositionError.Description"/> property.
</returns>
</member>
<member name="M:System.ComponentModel.Composition.CompositionError.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Gets the serialization data of the exception.
</summary>
<param name="info">
The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>.
</param>
<param name="context">
The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.
</param>
</member>
<member name="M:System.ComponentModel.Composition.CompositionError.System#Runtime#Serialization#ISerializable#GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Gets the serialization data of the exception.
</summary>
<param name="info">
The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>.
</param>
<param name="context">
The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="info"/> is <see langword="null"/>.
</exception>
</member>
<member name="P:System.ComponentModel.Composition.CompositionError.Element">
<summary>
Gets the composition element that is the cause of the error.
</summary>
<value>
The <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/> that is the cause of the
<see cref="T:System.ComponentModel.Composition.CompositionError"/>. The default is <see langword="null"/>.
</value>
</member>
<member name="P:System.ComponentModel.Composition.CompositionError.Description">
<summary>
Gets the message that describes the composition error.
</summary>
<value>
A <see cref="T:System.String"/> containing a message that describes the
<see cref="T:System.ComponentModel.Composition.CompositionError"/>.
</value>
</member>
<member name="P:System.ComponentModel.Composition.CompositionError.Exception">
<summary>
Gets the exception that is the underlying cause of the composition error.
</summary>
<value>
The <see cref="P:System.ComponentModel.Composition.CompositionError.Exception"/> that is the underlying cause of the
<see cref="T:System.ComponentModel.Composition.CompositionError"/>. The default is <see langword="null"/>.
</value>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.DirectoryCatalog.#ctor(System.String)">
<summary>
Creates a catalog of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/>s based on all the *.dll files
in the given directory path.
Possible exceptions that can be thrown are any that <see cref="M:System.IO.Directory.GetFiles(System.String,System.String)"/> or
<see cref="M:System.Reflection.Assembly.Load(System.Reflection.AssemblyName)"/> can throw.
</summary>
<param name="path">
Path to the directory to scan for assemblies to add to the catalog.
The path needs to be absolute or relative to <see cref="P:System.AppDomain.BaseDirectory"/>
</param>
<exception cref="T:System.ArgumentException">
If <paramref name="path"/> is a zero-length string, contains only white space, or
contains one or more implementation-specific invalid characters.
</exception>
<exception cref="T:System.ArgumentNullException">
<paramref name="path"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.IO.DirectoryNotFoundException">
The specified <paramref name="path"/> is invalid (for example, it is on an unmapped drive).
</exception>
<exception cref="T:System.IO.PathTooLongException">
The specified <paramref name="path"/>, file name, or both exceed the system-defined maximum length.
For example, on Windows-based platforms, paths must be less than 248 characters and file names must
be less than 260 characters.
</exception>
<exception cref="T:System.UnauthorizedAccessException">
The caller does not have the required permission.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.DirectoryCatalog.#ctor(System.String,System.String)">
<summary>
Creates a catalog of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/>s based on all the given searchPattern
over the files in the given directory path.
Possible exceptions that can be thrown are any that <see cref="M:System.IO.Directory.GetFiles(System.String,System.String)"/> or
<see cref="M:System.Reflection.Assembly.Load(System.Reflection.AssemblyName)"/> can throw.
</summary>
<param name="path">
Path to the directory to scan for assemblies to add to the catalog.
The path needs to be absolute or relative to <see cref="P:System.AppDomain.BaseDirectory"/>
</param>
<param name="searchPattern">
Any valid searchPattern that <see cref="M:System.IO.Directory.GetFiles(System.String,System.String)"/> will accept.
</param>
<exception cref="T:System.ArgumentException">
If <paramref name="path"/> is a zero-length string, contains only white space, or
contains one or more implementation-specific invalid characters. Or <paramref name="searchPattern"/>
does not contain a valid pattern.
</exception>
<exception cref="T:System.ArgumentNullException">
<paramref name="path"/> is <see langword="null"/> or <paramref name="searchPattern"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.IO.DirectoryNotFoundException">
The specified <paramref name="path"/> is invalid (for example, it is on an unmapped drive).
</exception>
<exception cref="T:System.IO.PathTooLongException">
The specified <paramref name="path"/>, file name, or both exceed the system-defined maximum length.
For example, on Windows-based platforms, paths must be less than 248 characters and file names must
be less than 260 characters.
</exception>
<exception cref="T:System.UnauthorizedAccessException">
The caller does not have the required permission.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.DirectoryCatalog.Dispose(System.Boolean)">
<summary>
Releases unmanaged and - optionally - managed resources
</summary>
<param name="disposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.DirectoryCatalog.GetExports(System.ComponentModel.Composition.Primitives.ImportDefinition)">
<summary>
Returns the export definitions that match the constraint defined by the specified definition.
</summary>
<param name="definition">
The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the
<see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects to return.
</param>
<returns>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.Tuple`2"/> containing the
<see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects and their associated
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> for objects that match the constraint defined
by <paramref name="definition"/>.
</returns>
<exception cref="T:System.ArgumentNullException">
<paramref name="definition"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.DirectoryCatalog"/> has been disposed of.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.DirectoryCatalog.OnChanged(System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs)">
<summary>
Raises the <see cref="E:System.ComponentModel.Composition.Hosting.INotifyComposablePartCatalogChanged.Changed"/> event.
</summary>
<param name="e">
An <see cref="T:System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs"/> containing the data for the event.
</param>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.DirectoryCatalog.OnChanging(System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs)">
<summary>
Raises the <see cref="E:System.ComponentModel.Composition.Hosting.INotifyComposablePartCatalogChanged.Changing"/> event.
</summary>
<param name="e">
An <see cref="T:System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs"/> containing the data for the event.
</param>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.DirectoryCatalog.Refresh">
<summary>
Refreshes the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/>s with the latest files in the directory that match
the searchPattern. If any files have been added they will be added to the catalog and if any files were
removed they will be removed from the catalog. For files that have been removed keep in mind that the
assembly cannot be unloaded from the process so <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/>s for those files
will simply be removed from the catalog.
Possible exceptions that can be thrown are any that <see cref="M:System.IO.Directory.GetFiles(System.String,System.String)"/> or
<see cref="M:System.Reflection.Assembly.Load(System.Reflection.AssemblyName)"/> can throw.
</summary>
<exception cref="T:System.IO.DirectoryNotFoundException">
The specified <paramref name="path"/> has been removed since object construction.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.DirectoryCatalog.ToString">
<summary>
Returns a string representation of the directory catalog.
</summary>
<returns>
A <see cref="T:System.String"/> containing the string representation of the <see cref="T:System.ComponentModel.Composition.Hosting.DirectoryCatalog"/>.
</returns>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.DirectoryCatalog.FullPath">
<summary>
Translated absolute path of the path passed into the constructor of <see cref="T:System.ComponentModel.Composition.Hosting.DirectoryCatalog"/>.
</summary>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.DirectoryCatalog.LoadedFiles">
<summary>
Set of files that have currently been loaded into the catalog.
</summary>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.DirectoryCatalog.Path">
<summary>
Path passed into the constructor of <see cref="T:System.ComponentModel.Composition.Hosting.DirectoryCatalog"/>.
</summary>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.DirectoryCatalog.Parts">
<summary>
Gets the part definitions of the directory catalog.
</summary>
<value>
A <see cref="T:System.Linq.IQueryable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects of the
<see cref="T:System.ComponentModel.Composition.Hosting.DirectoryCatalog"/>.
</value>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.DirectoryCatalog"/> has been disposed of.
</exception>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.DirectoryCatalog.SearchPattern">
<summary>
SearchPattern passed into the constructor of <see cref="T:System.ComponentModel.Composition.Hosting.DirectoryCatalog"/>, or the default *.dll.
</summary>
</member>
<member name="E:System.ComponentModel.Composition.Hosting.DirectoryCatalog.Changed">
<summary>
Notify when the contents of the Catalog has changed.
</summary>
</member>
<member name="E:System.ComponentModel.Composition.Hosting.DirectoryCatalog.Changing">
<summary>
Notify when the contents of the Catalog has changing.
</summary>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.DirectoryCatalog.System#ComponentModel#Composition#Primitives#ICompositionElement#DisplayName">
<summary>
Gets the display name of the directory catalog.
</summary>
<value>
A <see cref="T:System.String"/> containing a human-readable display name of the <see cref="T:System.ComponentModel.Composition.Hosting.DirectoryCatalog"/>.
</value>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.DirectoryCatalog.System#ComponentModel#Composition#Primitives#ICompositionElement#Origin">
<summary>
Gets the composition element from which the directory catalog originated.
</summary>
<value>
This property always returns <see langword="null"/>.
</value>
</member>
<member name="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog">
<summary>
An immutable ComposablePartCatalog created from a managed code assembly.
</summary>
<remarks>
This type is thread safe.
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.AssemblyCatalog.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/> class
with the specified code base.
</summary>
<param name="codeBase">
A <see cref="T:System.String"/> containing the code base of the assembly containing the
attributed <see cref="T:System.Type"/> objects to add to the <see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/>.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="codeBase"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="codeBase"/> is a zero-length string, contains only white space,
or contains one or more invalid characters as defined by <see cref="F:System.IO.Path.InvalidPathChars"/>.
</exception>
<exception cref="T:System.IO.PathTooLongException">
The specified path, file name, or both exceed the system-defined maximum length.
</exception>
<exception cref="T:System.Security.SecurityException">
The caller does not have path discovery permission.
</exception>
<exception cref="T:System.IO.FileNotFoundException">
<paramref name="codeBase"/> is not found.
</exception>
<exception cref="T:System.IO.FileLoadException">
<paramref name="codeBase"/> could not be loaded.
<para>
-or-
</para>
<paramref name="codeBase"/> specified a directory.
</exception>
<exception cref="T:System.BadImageFormatException">
<paramref name="codeBase"/> is not a valid assembly
-or-
Version 2.0 or later of the common language runtime is currently loaded
and <paramref name="codeBase"/> was compiled with a later version.
</exception>
<remarks>
The assembly referenced by <paramref langword="codeBase"/> is loaded into the Load context.
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.AssemblyCatalog.#ctor(System.Reflection.Assembly)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/> class
with the specified assembly.
</summary>
<param name="assembly">
The <see cref="P:System.ComponentModel.Composition.Hosting.AssemblyCatalog.Assembly"/> containing the attributed <see cref="T:System.Type"/> objects to
add to the <see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/>.
</param>
<exception cref="T:System.ArgumentException">
<paramref name="assembly"/> is <see langword="null"/>.
<para>
-or-
</para>
<paramref name="assembly"/> was loaded in the reflection-only context.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.AssemblyCatalog.GetExports(System.ComponentModel.Composition.Primitives.ImportDefinition)">
<summary>
Returns the export definitions that match the constraint defined by the specified definition.
</summary>
<param name="definition">
The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the
<see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects to return.
</param>
<returns>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.Tuple`2"/> containing the
<see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> objects and their associated
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> for objects that match the constraint defined
by <paramref name="definition"/>.
</returns>
<exception cref="T:System.ArgumentNullException">
<paramref name="definition"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> has been disposed of.
</exception>
<remarks>
<note type="inheritinfo">
Overriders of this property should never return <see langword="null"/>, if no
<see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/> match the conditions defined by
<paramref name="definition"/>, return an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</note>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.AssemblyCatalog.ToString">
<summary>
Returns a string representation of the assembly catalog.
</summary>
<returns>
A <see cref="T:System.String"/> containing the string representation of the <see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/>.
</returns>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.AssemblyCatalog.Parts">
<summary>
Gets the part definitions of the assembly catalog.
</summary>
<value>
A <see cref="T:System.Linq.IQueryable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects of the
<see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/>.
</value>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/> has been disposed of.
</exception>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.AssemblyCatalog.Assembly">
<summary>
Gets the assembly containing the attributed types contained within the assembly
catalog.
</summary>
<value>
The <see cref="P:System.ComponentModel.Composition.Hosting.AssemblyCatalog.Assembly"/> containing the attributed <see cref="T:System.Type"/> objects
contained within the <see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/>.
</value>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.AssemblyCatalog.System#ComponentModel#Composition#Primitives#ICompositionElement#DisplayName">
<summary>
Gets the display name of the assembly catalog.
</summary>
<value>
A <see cref="T:System.String"/> containing a human-readable display name of the <see cref="T:System.ComponentModel.Composition.Hosting.AssemblyCatalog"/>.
</value>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.AssemblyCatalog.System#ComponentModel#Composition#Primitives#ICompositionElement#Origin">
<summary>
Gets the composition element from which the assembly catalog originated.
</summary>
<value>
This property always returns <see langword="null"/>.
</value>
</member>
<member name="M:System.ComponentModel.Composition.AttributedModelServices.SatisfyImportsOnce(System.ComponentModel.Composition.ICompositionService,System.Object)">
<summary>
Satisfies the imports of the specified attributed object exactly once and they will not
ever be recomposed.
</summary>
<param name="part">
The attributed object to set the imports.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="attributedPart"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ComponentModel.Composition.CompositionException">
An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
contain a collection of errors that occurred.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.ICompositionService"/> has been disposed of.
</exception>
</member>
<member name="T:System.ComponentModel.Composition.InheritedExportAttribute">
<summary>
Specifies that a type or interface that provides a particular export.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.InheritedExportAttribute.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportAttribute"/> class, exporting the
type marked with this attribute under the default contract name.
</summary>
<remarks>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on the type itself,
that is marked with this attribute.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.InheritedExportAttribute.#ctor(System.Type)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportAttribute"/> class, exporting the
type marked with this attribute under a contract name derived from the specified type.
</summary>
<param name="contractType">
A <see cref="T:System.Type"/> of which to derive the contract name to export the type
marked with this attribute, under; or <see langword="null"/> to use the
default contract name.
</param>
<remarks>
<para>
The contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on
<paramref name="contractType"/>.
</para>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on the type of the
itself, that is marked with this attribute.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.InheritedExportAttribute.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportAttribute"/> class, exporting the
type or member marked with this attribute under the specified contract name.
</summary>
<param name="contractName">
A <see cref="T:System.String"/> containing the contract name to export the type
marked with this attribute, under; or <see langword="null"/> or an empty string
("") to use the default contract name.
</param>
<remarks>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on
the type itself that this is marked with this attribute.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.InheritedExportAttribute.#ctor(System.String,System.Type)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ExportAttribute"/> class, exporting the
type or member marked with this attribute under the specified contract name.
</summary>
<param name="contractName">
A <see cref="T:System.String"/> containing the contract name to export the type
marked with this attribute, under; or <see langword="null"/> or an empty string
("") to use the default contract name.
</param>
<param name="contractType">
A <see cref="T:System.Type"/> of which to derive the contract name to export the type
marked with this attribute, under; or <see langword="null"/> to use the
default contract name.
</param>
<remarks>
<para>
The default contract name is the result of calling
<see cref="M:System.ComponentModel.Composition.AttributedModelServices.GetContractName(System.Type)"/> on
the type itself that this is marked with this attribute.
</para>
<para>
The contract name is compared using a case-sensitive, non-linguistic comparison
using <see cref="P:System.StringComparer.Ordinal"/>.
</para>
</remarks>
</member>
<member name="T:System.ComponentModel.Composition.ImportingConstructorAttribute">
<summary>
Specifies that a constructor should be used when constructing an attributed part.
</summary>
<remarks>
By default, only a default parameter-less constructor, if available, is used to
construct an attributed part. Use this attribute to indicate that a specific constructor
should be used.
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.ImportingConstructorAttribute.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.ImportingConstructorAttribute"/> class.
</summary>
</member>
<member name="T:System.ComponentModel.Composition.Hosting.AtomicComposition">
<summary>
AtomicComposition provides lightweight atomicCompositional semantics to enable temporary
state to be managed for a series of nested atomicCompositions. Each atomicComposition maintains
queryable state along with a sequence of actions necessary to complete the state when
the atomicComposition is no longer in danger of being rolled back. State is completed or
rolled back when the atomicComposition is disposed, depending on the state of the
CompleteOnDipose property which defaults to false. The using(...) pattern in C# is a
convenient mechanism for defining atomicComposition scopes.
The least obvious aspects of AtomicComposition deal with nesting.
Firstly, no complete actions are actually performed until the outermost atomicComposition is
completed. Completeting or rolling back nested atomicCompositions serves only to change which
actions would be completed the outer atomicComposition.
Secondly, state is added in the form of queries associated with an object key. The
key represents a unique object the state is being held on behalf of. The quieries are
accessed throught the Query methods which provide automatic chaining to execute queries
across the target atomicComposition and its inner atomicComposition as appropriate.
Lastly, when a nested atomicComposition is created for a given outer the outer atomicComposition is locked.
It remains locked until the inner atomicComposition is disposed or completeed preventing the addition of
state, actions or other inner atomicCompositions.
</summary>
</member>
<member name="T:System.ComponentModel.Composition.PartMetadataAttribute">
<summary>
Specifies metadata for a type to be used as a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> and
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.PartMetadataAttribute.#ctor(System.String,System.Object)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.PartMetadataAttribute"/> with the
specified name and metadata value.
</summary>
<param name="name">
A <see cref="T:System.String"/> containing the name of the metadata value; or
<see langword="null"/> to use an empty string ("").
</param>
<param name="value">
An <see cref="T:System.Object"/> containing the metadata value. This can be
<see langword="null"/>.
</param>
</member>
<member name="P:System.ComponentModel.Composition.PartMetadataAttribute.Name">
<summary>
Gets the name of the metadata value.
</summary>
<value>
A <see cref="T:System.String"/> containing the name of the metadata value.
</value>
</member>
<member name="P:System.ComponentModel.Composition.PartMetadataAttribute.Value">
<summary>
Gets the metadata value.
</summary>
<value>
An <see cref="T:System.Object"/> containing the metadata value.
</value>
</member>
<member name="T:System.ComponentModel.Composition.PartCreationPolicyAttribute">
<summary>
Specifies <see cref="P:System.ComponentModel.Composition.PartCreationPolicyAttribute.CreationPolicy"/> for a given <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.PartCreationPolicyAttribute.#ctor(System.ComponentModel.Composition.CreationPolicy)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.PartCreationPolicyAttribute"/> class.
</summary>
</member>
<member name="P:System.ComponentModel.Composition.PartCreationPolicyAttribute.CreationPolicy">
<summary>
Gets or sets a value indicating the creation policy of the attributed part.
</summary>
<value>
One of the <see cref="P:System.ComponentModel.Composition.PartCreationPolicyAttribute.CreationPolicy"/> values indicating the creation policy of the
attributed part. The default is
<see cref="F:System.ComponentModel.Composition.CreationPolicy.Any"/>.
</value>
</member>
<member name="T:System.ComponentModel.Composition.MetadataAttributeAttribute">
<summary>
Specifies that an attribute can be used to provide metadata for a type, property, field,
or method marked with the <see cref="T:System.ComponentModel.Composition.ExportAttribute"/>.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.MetadataAttributeAttribute.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.MetadataAttributeAttribute"/> class.
</summary>
</member>
<member name="T:System.ComponentModel.Composition.Hosting.ComposablePartCatalogCollection">
<summary>
This class implements a threadsafe ICollection{T} of ComposablePartCatalog.
It is exposed as an ICollection(ComposablePartCatalog)
It is threadsafe, notifications are not marshalled using a SynchronizationContext.
It is Disposable.
</summary>
</member>
<member name="E:System.ComponentModel.Composition.Hosting.ComposablePartCatalogCollection.Changed">
<summary>
Notify when the contents of the Catalog has changed.
</summary>
</member>
<member name="E:System.ComponentModel.Composition.Hosting.ComposablePartCatalogCollection.Changing">
<summary>
Notify when the contents of the Catalog has changing.
</summary>
</member>
<member name="T:System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs">
<summary>
Provides data for the <see cref="E:System.ComponentModel.Composition.Hosting.INotifyComposablePartCatalogChanged.Changed"/> and
<see cref="E:System.ComponentModel.Composition.Hosting.INotifyComposablePartCatalogChanged.Changing"/> events.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs.#ctor(System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Primitives.ComposablePartDefinition},System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Primitives.ComposablePartDefinition},System.ComponentModel.Composition.Hosting.AtomicComposition)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs"/>.
</summary>
<param name="addedDefinitions">
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects that
are being added to the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/>.
</param>
<param name="removedDefinitions">
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects that
are being removed from the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/>.
</param>
<param name="atomicComposition">
A <see cref="P:System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs.AtomicComposition"/> representing all tentative changes that will
be completed if the change is successful, or discarded if it is not.
<see langword="null"/> if being applied outside a <see cref="P:System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs.AtomicComposition"/>
or during a <see cref="E:System.ComponentModel.Composition.Hosting.INotifyComposablePartCatalogChanged.Changed"/> event.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="addedDefinitions"/> or <paramref name="removedDefinitions"/> is <see langword="null"/>.
</exception>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs.AddedDefinitions">
<summary>
Gets the identifiers of the parts that have been added.
</summary>
<value>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects that
have been added to the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/>.
</value>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs.RemovedDefinitions">
<summary>
Gets the identifiers of the parts that have been removed.
</summary>
<value>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartDefinition"/> objects that
have been removed from from the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/>.
</value>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs.AtomicComposition">
<summary>
Gets the atomicComposition, if any, that this change applies to.
</summary>
<value>
A <see cref="P:System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs.AtomicComposition"/> that this set of changes applies too.
It can be <see langword="null"/> if the changes are being applied outside a
<see cref="P:System.ComponentModel.Composition.Hosting.ComposablePartCatalogChangeEventArgs.AtomicComposition"/> or during a
<see cref="E:System.ComponentModel.Composition.Hosting.INotifyComposablePartCatalogChanged.Changed"/> event.
When the value is non-null it should be used to record temporary changed state
and actions that will be executed when the atomicComposition is completeed.
</value>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.AggregateExportProvider.#ctor(System.ComponentModel.Composition.Hosting.ExportProvider[])">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/> class.
</summary>
<param name="providers">The prioritized list of export providers.</param>
<remarks>
<para>
The <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/> will consult the providers in the order they have been specfied when
executing <see cref="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports(System.ComponentModel.Composition.Primitives.ImportDefinition,System.ComponentModel.Composition.Hosting.AtomicComposition)"/>.
</para>
<para>
The <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/> does not take ownership of the specified providers.
That is, it will not try to dispose of any of them when it gets disposed.
</para>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.AggregateExportProvider.#ctor(System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Hosting.ExportProvider})">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/> class.
</summary>
<param name="providers">The prioritized list of export providers. The providers are consulted in order in which they are supplied.</param>
<remarks>
<para>
The <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/> will consult the providers in the order they have been specfied when
executing <see cref="M:System.ComponentModel.Composition.Hosting.ExportProvider.GetExports(System.ComponentModel.Composition.Primitives.ImportDefinition,System.ComponentModel.Composition.Hosting.AtomicComposition)"/>.
</para>
<para>
The <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/> does not take ownership of the specified providers.
That is, it will not try to dispose of any of them when it gets disposed.
</para>
</remarks>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.AggregateExportProvider.Dispose">
<summary>
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.AggregateExportProvider.Dispose(System.Boolean)">
<summary>
Releases unmanaged and - optionally - managed resources
</summary>
<param name="disposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.AggregateExportProvider.GetExportsCore(System.ComponentModel.Composition.Primitives.ImportDefinition,System.ComponentModel.Composition.Hosting.AtomicComposition)">
<summary>
Returns all exports that match the conditions of the specified import.
</summary>
<param name="definition">The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/> to get.</param>
<returns></returns>
<result>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match
the conditions defined by <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, if found; otherwise, an
empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</result>
<remarks>
<note type="inheritinfo">
The implementers should not treat the cardinality-related mismatches as errors, and are not
expected to throw exceptions in those cases.
For instance, if the import requests exactly one export and the provider has no matching exports or more than one,
it should return an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
</note>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.AggregateExportProvider.Providers">
<summary>
Gets the export providers which the aggregate export provider aggregates.
</summary>
<value>
A <see cref="T:System.Collections.ObjectModel.ReadOnlyCollection`1"/> of <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> objects
which the <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/> aggregates.
</value>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.AggregateExportProvider"/> has been disposed of.
</exception>
</member>
<member name="T:System.ComponentModel.Composition.Primitives.ComposablePartException">
<summary>
The exception that is thrown when an error occurs when calling methods on a
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/>.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ComposablePartException.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/> class.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ComposablePartException.#ctor(System.String)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/> class
with the specified error message.
</summary>
<param name="message">
A <see cref="T:System.String"/> containing a message that describes the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>; or <see langword="null"/> to set
the <see cref="P:System.Exception.Message"/> property to its default value.
</param>
<param name="element">
The <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/> that is the cause of the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>; or <see langword="null"/> to set
the <see cref="P:System.ComponentModel.Composition.Primitives.ComposablePartException.Element"/> property to
<see langword="null"/>.
</param>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ComposablePartException.#ctor(System.String,System.ComponentModel.Composition.Primitives.ICompositionElement)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/> class
with the specified error message and composition element that is the cause of
the exception.
</summary>
<param name="message">
A <see cref="T:System.String"/> containing a message that describes the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>; or <see langword="null"/> to set
the <see cref="P:System.Exception.Message"/> property to its default value.
</param>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ComposablePartException.#ctor(System.String,System.Exception)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/> class
with the specified error message and exception that is the cause of the
exception.
</summary>
<param name="message">
A <see cref="T:System.String"/> containing a message that describes the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>; or <see langword="null"/> to set
the <see cref="P:System.Exception.Message"/> property to its default value.
</param>
<param name="innerException">
The <see cref="T:System.Exception"/> that is the underlying cause of the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>; or <see langword="null"/> to set
the <see cref="P:System.Exception.InnerException"/> property to <see langword="null"/>.
</param>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ComposablePartException.#ctor(System.String,System.ComponentModel.Composition.Primitives.ICompositionElement,System.Exception)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/> class
with the specified error message, and composition element and exception that
are the cause of the exception.
</summary>
<param name="message">
A <see cref="T:System.String"/> containing a message that describes the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>; or <see langword="null"/> to set
the <see cref="P:System.Exception.Message"/> property to its default value.
</param>
<param name="element">
The <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/> that is the cause of the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>; or <see langword="null"/> to set
the <see cref="P:System.ComponentModel.Composition.Primitives.ComposablePartException.Element"/> property to
<see langword="null"/>.
</param>
<param name="innerException">
The <see cref="T:System.Exception"/> that is the underlying cause of the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>; or <see langword="null"/> to set
the <see cref="P:System.Exception.InnerException"/> property to <see langword="null"/>.
</param>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ComposablePartException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/> class
with the specified serialization data.
</summary>
<param name="info">
The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>.
</param>
<param name="context">
The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="info"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.Runtime.Serialization.SerializationException">
<paramref name="info"/> is missing a required value.
</exception>
<exception cref="T:System.InvalidCastException">
<paramref name="info"/> contains a value that cannot be cast to the correct type.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Primitives.ComposablePartException.GetObjectData(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
<summary>
Gets the serialization data of the exception.
</summary>
<param name="info">
The <see cref="T:System.Runtime.Serialization.SerializationInfo"/> that holds the serialized object data about the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>.
</param>
<param name="context">
The <see cref="T:System.Runtime.Serialization.StreamingContext"/> that contains contextual information about the
source or destination.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="info"/> is <see langword="null"/>.
</exception>
</member>
<member name="P:System.ComponentModel.Composition.Primitives.ComposablePartException.Element">
<summary>
Gets the composition element that is the cause of the exception.
</summary>
<value>
The <see cref="T:System.ComponentModel.Composition.Primitives.ICompositionElement"/> that is the cause of the
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartException"/>. The default is <see langword="null"/>.
</value>
</member>
<member name="P:System.ComponentModel.Composition.CompositionResult`1.Value">
<summary>
Gets the value from the result, throwing a CompositionException if there are any errors.
</summary>
</member>
<member name="T:System.ComponentModel.Composition.Hosting.ExportsChangeEventArgs">
<summary>
Provides data for the <see cref="E:System.ComponentModel.Composition.Hosting.ExportProvider.ExportsChanged"/> and
<see cref="E:System.ComponentModel.Composition.Hosting.ExportProvider.ExportsChanging"/> events.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.ExportsChangeEventArgs.#ctor(System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Primitives.ExportDefinition},System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Primitives.ExportDefinition},System.ComponentModel.Composition.Hosting.AtomicComposition)">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.ExportsChangeEventArgs"/> class with
the specified changed export definitions.
</summary>
<param name="addedExports">
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/>s of the exports
that have been added.
</param>
<param name="removedExports">
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.ExportDefinition"/>s of the exports
that have been removed.
</param>
<param name="atomicComposition">
A <see cref="P:System.ComponentModel.Composition.Hosting.ExportsChangeEventArgs.AtomicComposition"/> representing all tentative changes that will
be completed if the change is successful, or discarded if it is not.
<see langword="null"/> if being applied outside a <see cref="P:System.ComponentModel.Composition.Hosting.ExportsChangeEventArgs.AtomicComposition"/>
or during a <see cref="E:System.ComponentModel.Composition.Hosting.ExportProvider.ExportsChanged"/> event.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="addedExports"/> or <paramref name="removedExports"/> is <see langword="null"/>.
</exception>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.ExportsChangeEventArgs.AddedExports">
<summary>
Gets the export definitions for the exports that have been added.
</summary>
<value>
A <see cref="T:System.Collections.Generic.IEnumerable`1"/> of ExportDefinitions representing
the exports that have been added to the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</value>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.ExportsChangeEventArgs.RemovedExports">
<summary>
Gets the export definitions for the exports that have been removed.
</summary>
<value>
A <see cref="T:System.Collections.Generic.IEnumerable`1"/> of ExportDefinitions representing
the exports that have been added to the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</value>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.ExportsChangeEventArgs.ChangedContractNames">
<summary>
Gets the contract names of the exports that have changed.
</summary>
<value>
A <see cref="T:System.Collections.Generic.IEnumerable`1"/> of strings representing the contract names of
the exports that have changed in the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
</value>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.ExportsChangeEventArgs.AtomicComposition">
<summary>
Gets the atomicComposition, if any, that this change applies to.
</summary>
<value>
A <see cref="P:System.ComponentModel.Composition.Hosting.ExportsChangeEventArgs.AtomicComposition"/> that this set of changes applies too.
It can be <see langword="null"/> if the changes are being applied outside a
<see cref="P:System.ComponentModel.Composition.Hosting.ExportsChangeEventArgs.AtomicComposition"/> or during a
<see cref="E:System.ComponentModel.Composition.Hosting.ExportProvider.ExportsChanged"/> event.
When the value is non-null it should be used to record temporary changed state
and actions that will be executed when the atomicComposition is completeed.
</value>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.#ctor">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> class.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.#ctor(System.ComponentModel.Composition.Hosting.ExportProvider[])">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> class
with the specified export providers.
</summary>
<param name="providers">
A <see cref="T:System.Array"/> of <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> objects which provide
the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> access to <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects,
or <see langword="null"/> to set <see cref="P:System.ComponentModel.Composition.Hosting.CompositionContainer.Providers"/> to an empty
<see cref="T:System.Collections.ObjectModel.ReadOnlyCollection`1"/>.
</param>
<exception cref="T:System.ArgumentException">
<paramref name="providers"/> contains an element that is <see langword="null"/>.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.#ctor(System.ComponentModel.Composition.Primitives.ComposablePartCatalog,System.ComponentModel.Composition.Hosting.ExportProvider[])">
<summary>
Initializes a new instance of the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> class
with the specified catalog and export providers.
</summary>
<param name="providers">
A <see cref="T:System.Array"/> of <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> objects which provide
the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> access to <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects,
or <see langword="null"/> to set <see cref="P:System.ComponentModel.Composition.Hosting.CompositionContainer.Providers"/> to an empty
<see cref="T:System.Collections.ObjectModel.ReadOnlyCollection`1"/>.
</param>
<exception cref="T:System.ArgumentException">
<paramref name="providers"/> contains an element that is <see langword="null"/>.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.Dispose">
<summary>
Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
</summary>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.Dispose(System.Boolean)">
<summary>
Releases unmanaged and - optionally - managed resources
</summary>
<param name="disposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.ReleaseExport(System.ComponentModel.Composition.Primitives.Export)">
<summary>
Releases the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> from the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>. The behavior
may vary depending on the implementation of the <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> that produced
the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> instance. As a general rule non shared exports should be early
released causing them to be detached from the container.
For example the <see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/> will only release
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
under a <see cref="F:System.ComponentModel.Composition.CreationPolicy.NonShared"/> context. Release in this context means walking
the dependency chain of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>s, detaching references from the container and
calling Dispose on 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 a <see cref="F:System.ComponentModel.Composition.CreationPolicy.Shared"/> context the
<see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/> will do nothing as it may be in use by other requestors.
Those will only be detached when the container is itself disposed.
</summary>
<param name="export"><see cref="T:System.ComponentModel.Composition.Primitives.Export"/> that needs to be released.</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="export"/> is <see langword="null"/>.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.ReleaseExport``1(System.Lazy{``0})">
<summary>
Releases the <see cref="T:System.Lazy`1"/> from the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>. The behavior
may vary depending on the implementation of the <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> that produced
the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> instance. As a general rule non shared exports should be early
released causing them to be detached from the container.
For example the <see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/> will only release
an <see cref="T:System.Lazy`1"/> if it comes from a <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> that was constructed
under a <see cref="F:System.ComponentModel.Composition.CreationPolicy.NonShared"/> context. Release in this context means walking
the dependency chain of the <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>s, detaching references from the container and
calling Dispose on 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 a <see cref="F:System.ComponentModel.Composition.CreationPolicy.Shared"/> context the
<see cref="T:System.ComponentModel.Composition.Hosting.CatalogExportProvider"/> will do nothing as it may be in use by other requestors.
Those will only be detached when the container is itself disposed.
</summary>
<param name="export"><see cref="T:System.ComponentModel.Composition.Primitives.Export"/> that needs to be released.</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="export"/> is <see langword="null"/>.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.ReleaseExports(System.Collections.Generic.IEnumerable{System.ComponentModel.Composition.Primitives.Export})">
<summary>
Releases a set of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>s from the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
See also <see cref="M:System.ComponentModel.Composition.Hosting.CompositionContainer.ReleaseExport(System.ComponentModel.Composition.Primitives.Export)"/>.
</summary>
<param name="exports"><see cref="T:System.ComponentModel.Composition.Primitives.Export"/>s that need to be released.</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="exports"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="exports"/> contains an element that is <see langword="null"/>.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.ReleaseExports``1(System.Collections.Generic.IEnumerable{System.Lazy{``0}})">
<summary>
Releases a set of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>s from the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
See also <see cref="M:System.ComponentModel.Composition.Hosting.CompositionContainer.ReleaseExport(System.ComponentModel.Composition.Primitives.Export)"/>.
</summary>
<param name="exports"><see cref="T:System.ComponentModel.Composition.Primitives.Export"/>s that need to be released.</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="exports"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="exports"/> contains an element that is <see langword="null"/>.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.ReleaseExports``2(System.Collections.Generic.IEnumerable{System.Lazy{``0,``1}})">
<summary>
Releases a set of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>s from the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/>.
See also <see cref="M:System.ComponentModel.Composition.Hosting.CompositionContainer.ReleaseExport(System.ComponentModel.Composition.Primitives.Export)"/>.
</summary>
<param name="exports"><see cref="T:System.ComponentModel.Composition.Primitives.Export"/>s that need to be released.</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="exports"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ArgumentException">
<paramref name="exports"/> contains an element that is <see langword="null"/>.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.SatisfyImportsOnce(System.ComponentModel.Composition.Primitives.ComposablePart)">
<summary>
Sets the imports of the specified composable part exactly once and they will not
ever be recomposed.
</summary>
<param name="part">
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> to set the imports.
</param>
<exception cref="T:System.ArgumentNullException">
<paramref name="part"/> is <see langword="null"/>.
</exception>
<exception cref="T:System.ComponentModel.Composition.CompositionException">
An error occurred during composition. <see cref="P:System.ComponentModel.Composition.CompositionException.Errors"/> will
contain a collection of errors that occurred.
</exception>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.ICompositionService"/> has been disposed of.
</exception>
</member>
<member name="M:System.ComponentModel.Composition.Hosting.CompositionContainer.GetExportsCore(System.ComponentModel.Composition.Primitives.ImportDefinition,System.ComponentModel.Composition.Hosting.AtomicComposition)">
<summary>
Returns all exports that match the conditions of the specified import.
</summary>
<param name="definition">The <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/> that defines the conditions of the
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/> to get.</param>
<returns></returns>
<result>
An <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects that match
the conditions defined by <see cref="T:System.ComponentModel.Composition.Primitives.ImportDefinition"/>, if found; otherwise, an
empty <see cref="T:System.Collections.Generic.IEnumerable`1"/>.
</result>
<remarks>
<note type="inheritinfo">
The implementers should not treat the cardinality-related mismatches as errors, and are not
expected to throw exceptions in those cases.
For instance, if the import requests exactly one export and the provider has no matching exports or more than one,
it should return an empty <see cref="T:System.Collections.Generic.IEnumerable`1"/> of <see cref="T:System.ComponentModel.Composition.Primitives.Export"/>.
</note>
</remarks>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.CompositionContainer.Catalog">
<summary>
Gets the catalog which provides the container access to exports produced
from composable parts.
</summary>
<value>
The <see cref="T:System.ComponentModel.Composition.Primitives.ComposablePartCatalog"/> which provides the
<see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> access to exports produced from
<see cref="T:System.ComponentModel.Composition.Primitives.ComposablePart"/> objects. The default is <see langword="null"/>.
</value>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
</exception>
</member>
<member name="P:System.ComponentModel.Composition.Hosting.CompositionContainer.Providers">
<summary>
Gets the export providers which provide the container access to additional exports.
</summary>
<value>
A <see cref="T:System.Collections.ObjectModel.ReadOnlyCollection`1"/> of <see cref="T:System.ComponentModel.Composition.Hosting.ExportProvider"/> objects
which provide the <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> access to additional
<see cref="T:System.ComponentModel.Composition.Primitives.Export"/> objects. The default is an empty
<see cref="T:System.Collections.ObjectModel.ReadOnlyCollection`1"/>.
</value>
<exception cref="T:System.ObjectDisposedException">
The <see cref="T:System.ComponentModel.Composition.Hosting.CompositionContainer"/> has been disposed of.
</exception>
</member>
<member name="M:Microsoft.Internal.GenerationServices.LoadValue(System.Reflection.Emit.ILGenerator,System.Object)">
Generates the code that loads the supplied value on the stack
This is not as simple as it seems, as different instructions need to be generated depending
on its type.
We support:
1. All primitive types
2. Strings
3. Enums
4. typeofs
5. nulls
6. Enumerables
7. Delegates on static functions or any of the above
Everything else cannot be represented as literals
<param name="ilGenerator"></param>
<param name="item"></param>
<param name="key"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:Microsoft.Internal.GenerationServices.AddItemToLocalDictionary(System.Reflection.Emit.ILGenerator,System.Reflection.Emit.LocalBuilder,System.Object,System.Object)">
Generates the code that adds an object to a dictionary stored in a local variable
<param name="ilGenerator"></param>
<param name="dictionary"></param>
<param name="key"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:Microsoft.Internal.GenerationServices.AddLocalToLocalDictionary(System.Reflection.Emit.ILGenerator,System.Reflection.Emit.LocalBuilder,System.Object,System.Reflection.Emit.LocalBuilder)">
Generates the code that adds an object from a local variable to a dictionary also stored in a local
<param name="ilGenerator"></param>
<param name="dictionary"></param>
<param name="key"></param>
<param name="value"></param>
<returns></returns>
</member>
<member name="M:Microsoft.Internal.GenerationServices.GetExceptionDataAndStoreInLocal(System.Reflection.Emit.ILGenerator,System.Reflection.Emit.LocalBuilder,System.Reflection.Emit.LocalBuilder)">
Generates the code to get the type of an object and store it in a local
<param name="ilGenerator"></param>
<param name="dictionary"></param>
<param name="key"></param>
<param name="value"></param>
<returns></returns>
</member>
</members>
</doc>