AssemblyCatalog AssemblyCatalog AssemblyCatalog AssemblyCatalog Class

Definición

Detecta las partes atribuidas en un ensamblado de código administrado.Discovers attributed parts in a managed code assembly.

public ref class AssemblyCatalog : System::ComponentModel::Composition::Primitives::ComposablePartCatalog, System::ComponentModel::Composition::Primitives::ICompositionElement
public class AssemblyCatalog : System.ComponentModel.Composition.Primitives.ComposablePartCatalog, System.ComponentModel.Composition.Primitives.ICompositionElement
type AssemblyCatalog = class
    inherit ComposablePartCatalog
    interface ICompositionElement
Public Class AssemblyCatalog
Inherits ComposablePartCatalog
Implements ICompositionElement
Herencia
Implementaciones

Ejemplos

En el código siguiente se muestra el escenario común de una aplicación AssemblyCatalog que crea un para analizar su propio ensamblado.The following code demonstrates the common scenario of an application creating an AssemblyCatalog to parse its own assembly. Se trata de una manera sencilla de cargar las partes contenidas en un único proyecto en el Managed Extensibility Framework (MEF).This is a straightforward way to load parts contained in a single project into the Managed Extensibility Framework (MEF).

[Export]
class MyAddin
{
    public String myData { get { return "The data!"; } }
}

class MyProgram
{
    [Import]
    public MyAddin myAddin { get; set; }
}


class Program
{
    static void Main(string[] args)
    {
        AggregateCatalog catalog = new AggregateCatalog();
        catalog.Catalogs.Add(new AssemblyCatalog(typeof(MyAddin).Assembly));
        CompositionContainer _container = new CompositionContainer(catalog);
        MyProgram myProgram = new MyProgram();
        _container.SatisfyImportsOnce(myProgram);
        Console.WriteLine(myProgram.myAddin.myData);
        Console.ReadLine();

        _container.Dispose();
    }
}
<Export()>
Public Class MyAddin
    Public ReadOnly Property theData As String
        Get
            Return "The Data!"
        End Get
    End Property
End Class

Public Class MyProgam
    Private _MyAddin As MyAddin

    <Import()>
    Public Property MyAddinProperty As MyAddin
        Get
            Return _MyAddin
        End Get
        Set(ByVal value As MyAddin)
            _MyAddin = value
        End Set
    End Property

End Class



Sub Main()
    Dim catalog As AggregateCatalog = New AggregateCatalog()
    catalog.Catalogs.Add(New AssemblyCatalog(GetType(MyAddin).Assembly))
    Dim container As CompositionContainer = New CompositionContainer(catalog)
    Dim theProgam As MyProgam = New MyProgam()
    container.SatisfyImportsOnce(theProgam)
    Console.WriteLine(theProgam.MyAddinProperty.theData)
    Console.ReadLine()

    container.Dispose()

End Sub

Comentarios

AssemblyCatalog Se utiliza para analizar todas las partes presentes en un ensamblado especificado.An AssemblyCatalog is used to parse all the parts present in a specified assembly. El ensamblado de destino se puede indicar por referencia de objeto o por ruta de acceso.The target assembly can be indicated either by object reference or by path.

Importante

Este tipo implementa la interfaz IDisposable.This type implements the IDisposable interface. Cuando haya terminado de utilizar el tipo, debe desecharlo directa o indirectamente.When you have finished using the type, you should dispose of it either directly or indirectly. Para eliminar el tipo directamente, llame a su método Dispose en un bloque try/catch.To dispose of the type directly, call its Dispose method in a try/catch block. Para deshacerse de él indirectamente, use una construcción de lenguaje como using (en C#) o Using (en Visual Basic).To dispose of it indirectly, use a language construct such as using (in C#) or Using (in Visual Basic). Para más información, vea la sección "Uso de objetos que implementan IDisposable" en el tema de la interfaz IDisposable.For more information, see the "Using an Object that Implements IDisposable" section in the IDisposable interface topic.

Este tipo es seguro para la ejecución de subprocesos.This type is thread safe.

Constructores

AssemblyCatalog(Assembly) AssemblyCatalog(Assembly) AssemblyCatalog(Assembly) AssemblyCatalog(Assembly)

Inicializa una nueva instancia de la clase AssemblyCatalog con el ensamblado especificado.Initializes a new instance of the AssemblyCatalog class with the specified assembly.

AssemblyCatalog(Assembly, ICompositionElement) AssemblyCatalog(Assembly, ICompositionElement) AssemblyCatalog(Assembly, ICompositionElement) AssemblyCatalog(Assembly, ICompositionElement)

Inicializa una nueva instancia de la clase AssemblyCatalog con el ensamblado especificado.Initializes a new instance of the AssemblyCatalog class with the specified assembly.

AssemblyCatalog(Assembly, ReflectionContext) AssemblyCatalog(Assembly, ReflectionContext) AssemblyCatalog(Assembly, ReflectionContext) AssemblyCatalog(Assembly, ReflectionContext)

Inicializa una nueva instancia de la clase AssemblyCatalog con el ensamblado y contexto de reflejo especificados.Initializes a new instance of the AssemblyCatalog class with the specified assembly and reflection context.

AssemblyCatalog(Assembly, ReflectionContext, ICompositionElement) AssemblyCatalog(Assembly, ReflectionContext, ICompositionElement) AssemblyCatalog(Assembly, ReflectionContext, ICompositionElement) AssemblyCatalog(Assembly, ReflectionContext, ICompositionElement)

Inicializa una nueva instancia de la clase AssemblyCatalog con el ensamblado y contexto de reflejo especificados.Initializes a new instance of the AssemblyCatalog class with the specified assembly and reflection context.

AssemblyCatalog(String) AssemblyCatalog(String) AssemblyCatalog(String) AssemblyCatalog(String)

Inicializa una nueva instancia de la clase AssemblyCatalog con la base de código especificada.Initializes a new instance of the AssemblyCatalog class with the specified code base.

AssemblyCatalog(String, ICompositionElement) AssemblyCatalog(String, ICompositionElement) AssemblyCatalog(String, ICompositionElement) AssemblyCatalog(String, ICompositionElement)

Inicializa una nueva instancia de la clase AssemblyCatalog con la base de código especificada.Initializes a new instance of the AssemblyCatalog class with the specified code base.

AssemblyCatalog(String, ReflectionContext) AssemblyCatalog(String, ReflectionContext) AssemblyCatalog(String, ReflectionContext) AssemblyCatalog(String, ReflectionContext)

Inicializa una nueva instancia de la clase AssemblyCatalog con la base de código y el contexto de reflexión especificados.Initializes a new instance of the AssemblyCatalog class with the specified code base and reflection context.

AssemblyCatalog(String, ReflectionContext, ICompositionElement) AssemblyCatalog(String, ReflectionContext, ICompositionElement) AssemblyCatalog(String, ReflectionContext, ICompositionElement) AssemblyCatalog(String, ReflectionContext, ICompositionElement)

Inicializa una nueva instancia de la clase AssemblyCatalog con la base de código y el contexto de reflexión especificados.Initializes a new instance of the AssemblyCatalog class with the specified code base and reflection context.

Propiedades

Assembly Assembly Assembly Assembly

Obtiene el ensamblado cuyos tipos con atributos están contenidos en el catálogo de ensamblados.Gets the assembly whose attributed types are contained in the assembly catalog.

Parts Parts Parts Parts

Obtiene las definiciones de elementos que están contenidas en el catálogo de ensamblados.Gets the part definitions that are contained in the assembly catalog.

Métodos

Dispose() Dispose() Dispose() Dispose()

Libera todos los recursos que usa ComposablePartCatalog.Releases all resources used by the ComposablePartCatalog.

(Inherited from ComposablePartCatalog)
Dispose(Boolean) Dispose(Boolean) Dispose(Boolean) Dispose(Boolean)

Libera los recursos no administrados que usa AssemblyCatalog y, de forma opcional, libera los recursos administrados.Releases the unmanaged resources used by the AssemblyCatalog and optionally releases the managed resources.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina si el objeto especificado es igual al objeto actual.Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetEnumerator() GetEnumerator() GetEnumerator() GetEnumerator()

Devuelve un enumerador que recorre en iteración el catálogo.Returns an enumerator that iterates through the catalog.

GetExports(ImportDefinition) GetExports(ImportDefinition) GetExports(ImportDefinition) GetExports(ImportDefinition)

Obtiene una colección de las exportaciones que cumplen las condiciones especificadas por la definición de importación.Gets a collection of exports that match the conditions specified by the import definition.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Sirve como la función hash predeterminada.Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

Obtiene el Type de la instancia actual.Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficial del objeto Object actual.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Obtiene una representación de cadena del catálogo de ensamblados.Gets a string representation of the assembly catalog.

Implementaciones de interfaz explícitas

ICompositionElement.DisplayName ICompositionElement.DisplayName ICompositionElement.DisplayName ICompositionElement.DisplayName

Obtiene el nombre para mostrar del objeto AssemblyCatalog.Gets the display name of the AssemblyCatalog object.

ICompositionElement.Origin ICompositionElement.Origin ICompositionElement.Origin ICompositionElement.Origin

Obtiene el elemento de composición a partir del que se originó este elemento.Gets the composition element that this element originated from.

IEnumerable.GetEnumerator() IEnumerable.GetEnumerator() IEnumerable.GetEnumerator() IEnumerable.GetEnumerator()

Devuelve un enumerador que recorre en iteración el catálogo.Returns an enumerator that iterates through the catalog.

(Inherited from ComposablePartCatalog)

Métodos de extensión

CreateCompositionService(ComposablePartCatalog) CreateCompositionService(ComposablePartCatalog) CreateCompositionService(ComposablePartCatalog) CreateCompositionService(ComposablePartCatalog)

Crea un nuevo servicio de composición mediante el catálogo especificado como origen de las exportaciones.Creates a new composition service by using the specified catalog as a source for exports.

Filter(ComposablePartCatalog, Func<ComposablePartDefinition,Boolean>) Filter(ComposablePartCatalog, Func<ComposablePartDefinition,Boolean>) Filter(ComposablePartCatalog, Func<ComposablePartDefinition,Boolean>) Filter(ComposablePartCatalog, Func<ComposablePartDefinition,Boolean>)

Filtra el catálogo especificado con la función de filtro especificada.Filters the specified catalog with the specified filter function.

CopyToDataTable<T>(IEnumerable<T>) CopyToDataTable<T>(IEnumerable<T>) CopyToDataTable<T>(IEnumerable<T>) CopyToDataTable<T>(IEnumerable<T>)

Devuelve un objeto DataTable que contiene copias de los objetos DataRow, dado un objeto IEnumerable<T> de entrada donde el parámetro T genérico es DataRow.Returns a DataTable that contains copies of the DataRow objects, given an input IEnumerable<T> object where the generic parameter T is DataRow.

CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption) CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption) CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption) CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption)

Copia objetos DataRow en el objeto DataTable especificado, dado un objeto IEnumerable<T> de entrada donde el parámetro T genérico es DataRow.Copies DataRow objects to the specified DataTable, given an input IEnumerable<T> object where the generic parameter T is DataRow.

CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler) CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler) CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler) CopyToDataTable<T>(IEnumerable<T>, DataTable, LoadOption, FillErrorEventHandler)

Copia objetos DataRow en el objeto DataTable especificado, dado un objeto IEnumerable<T> de entrada donde el parámetro T genérico es DataRow.Copies DataRow objects to the specified DataTable, given an input IEnumerable<T> object where the generic parameter T is DataRow.

Cast<TResult>(IEnumerable) Cast<TResult>(IEnumerable) Cast<TResult>(IEnumerable) Cast<TResult>(IEnumerable)

Convierte los elementos de IEnumerable en el tipo especificado.Casts the elements of an IEnumerable to the specified type.

OfType<TResult>(IEnumerable) OfType<TResult>(IEnumerable) OfType<TResult>(IEnumerable) OfType<TResult>(IEnumerable)

Filtra los elementos de IEnumerable en función de un tipo especificado.Filters the elements of an IEnumerable based on a specified type.

AsParallel(IEnumerable) AsParallel(IEnumerable) AsParallel(IEnumerable) AsParallel(IEnumerable)

Habilita la paralelización de una consulta.Enables parallelization of a query.

AsQueryable(IEnumerable) AsQueryable(IEnumerable) AsQueryable(IEnumerable) AsQueryable(IEnumerable)

Convierte una interfaz IEnumerable en IQueryable.Converts an IEnumerable to an IQueryable.

Ancestors<T>(IEnumerable<T>) Ancestors<T>(IEnumerable<T>) Ancestors<T>(IEnumerable<T>) Ancestors<T>(IEnumerable<T>)

Devuelve una colección de elementos que contiene los antecesores de todos los nodos de la colección de origen.Returns a collection of elements that contains the ancestors of every node in the source collection.

Ancestors<T>(IEnumerable<T>, XName) Ancestors<T>(IEnumerable<T>, XName) Ancestors<T>(IEnumerable<T>, XName) Ancestors<T>(IEnumerable<T>, XName)

Devuelve una colección de elementos filtrada que contiene los antecesores de todos los nodos de la colección de origen.Returns a filtered collection of elements that contains the ancestors of every node in the source collection. En la colección sólo se incluyen los elementos que tienen un objeto XName coincidente.Only elements that have a matching XName are included in the collection.

DescendantNodes<T>(IEnumerable<T>) DescendantNodes<T>(IEnumerable<T>) DescendantNodes<T>(IEnumerable<T>) DescendantNodes<T>(IEnumerable<T>)

Devuelve una colección de los nodos descendientes de todos los documentos y elementos de la colección de origen.Returns a collection of the descendant nodes of every document and element in the source collection.

Descendants<T>(IEnumerable<T>) Descendants<T>(IEnumerable<T>) Descendants<T>(IEnumerable<T>) Descendants<T>(IEnumerable<T>)

Devuelve una colección de elementos que contiene los elementos descendientes de todos los elementos y documentos de la colección de origen.Returns a collection of elements that contains the descendant elements of every element and document in the source collection.

Descendants<T>(IEnumerable<T>, XName) Descendants<T>(IEnumerable<T>, XName) Descendants<T>(IEnumerable<T>, XName) Descendants<T>(IEnumerable<T>, XName)

Devuelve una colección filtrada de elementos que contiene los elementos descendientes de todos los elementos y documentos de la colección de origen.Returns a filtered collection of elements that contains the descendant elements of every element and document in the source collection. En la colección sólo se incluyen los elementos que tienen un objeto XName coincidente.Only elements that have a matching XName are included in the collection.

Elements<T>(IEnumerable<T>) Elements<T>(IEnumerable<T>) Elements<T>(IEnumerable<T>) Elements<T>(IEnumerable<T>)

Devuelve una colección de los elementos secundarios de todos los elementos y documentos de la colección de origen.Returns a collection of the child elements of every element and document in the source collection.

Elements<T>(IEnumerable<T>, XName) Elements<T>(IEnumerable<T>, XName) Elements<T>(IEnumerable<T>, XName) Elements<T>(IEnumerable<T>, XName)

Devuelve una colección filtrada de los elementos secundarios de todos los elementos y documentos de la colección de origen.Returns a filtered collection of the child elements of every element and document in the source collection. En la colección sólo se incluyen los elementos que tienen un objeto XName coincidente.Only elements that have a matching XName are included in the collection.

InDocumentOrder<T>(IEnumerable<T>) InDocumentOrder<T>(IEnumerable<T>) InDocumentOrder<T>(IEnumerable<T>) InDocumentOrder<T>(IEnumerable<T>)

Devuelve una colección de nodos que contiene todos los nodos de la colección de origen, clasificados por documento.Returns a collection of nodes that contains all nodes in the source collection, sorted in document order.

Nodes<T>(IEnumerable<T>) Nodes<T>(IEnumerable<T>) Nodes<T>(IEnumerable<T>) Nodes<T>(IEnumerable<T>)

Devuelve una colección de los nodos secundarios de todos los documentos y elementos de la colección de origen.Returns a collection of the child nodes of every document and element in the source collection.

Remove<T>(IEnumerable<T>) Remove<T>(IEnumerable<T>) Remove<T>(IEnumerable<T>) Remove<T>(IEnumerable<T>)

Quita todos los nodos de la colección de origen de su nodo primario.Removes every node in the source collection from its parent node.

Se aplica a