Share via


CollectionAdapters.ToIList Método

Definición

Sobrecargas

ToIList<T>(IListContract<T>)

Convierte la colección IListContract<T> especificada en una colección IList<T>.

ToIList<TContract,TView>(IListContract<TContract>, Converter<TContract,TView>, Converter<TView,TContract>)

Convierte la colección IListContract<T> especificada en una colección IList<T> utilizando adaptadores de convertidor.

ToIList<T>(IListContract<T>)

Convierte la colección IListContract<T> especificada en una colección IList<T>.

public:
generic <typename T>
 static System::Collections::Generic::IList<T> ^ ToIList(System::AddIn::Contract::IListContract<T> ^ collection);
public static System.Collections.Generic.IList<T> ToIList<T> (System.AddIn.Contract.IListContract<T> collection);
static member ToIList : System.AddIn.Contract.IListContract<'T> -> System.Collections.Generic.IList<'T>
Public Shared Function ToIList(Of T) (collection As IListContract(Of T)) As IList(Of T)

Parámetros de tipo

T

Tipo de objetos incluidos en la lista. T debe ser serializable.

Parámetros

collection
IListContract<T>

Colección al otro lado de la canalización.

Devoluciones

Colección que se ha convertido.

Ejemplos

En el ejemplo siguiente se implementa un segmento de canalización de adaptador del lado host, como se describe Tutorial: Pasar colecciones entre hosts y complementos. En el ejemplo se adapta el método personalizado ProcessBooks tomando la IListContract<T> colección pasada desde el complemento y convirtiéndola en una IList<T> colección, que la aplicación host puede usar.

public virtual void ProcessBooks(IListContract<Library.IBookInfoContract> books)
{
    _view.ProcessBooks(CollectionAdapters.ToIList<Library.IBookInfoContract,
        LibraryContractsBase.BookInfo>(books,
        LibraryContractsAddInAdapters.BookInfoAddInAdapter.ContractToViewAdapter,
        LibraryContractsAddInAdapters.BookInfoAddInAdapter.ViewToContractAdapter));
}
Public Overridable Sub ProcessBooks(ByVal books As IListContract(Of Library.IBookInfoContract)) Implements Library.ILibraryManagerContract.ProcessBooks
    _view.ProcessBooks(CollectionAdapters.ToIList(Of Library.IBookInfoContract, _
    LibraryContractsBase.BookInfo)(books, _
    AddressOf LibraryContractsAddInAdapters.BookInfoAddInAdapter.ContractToViewAdapter, _
    AddressOf LibraryContractsAddInAdapters.BookInfoAddInAdapter.ViewToContractAdapter))
End Sub

Comentarios

La aplicación host o el complemento pueden usar la colección devuelta IList<T> . La IList<T> colección tendrá un token de duración para la colección remota IListContract<T> .

Debe usar esta sobrecarga de método solo cuando el contenido de IListContract<T> son tipos serializables que se pueden pasar directamente al complemento y al host (en lugar de los tipos que se deben adaptar a las vistas).

Se aplica a

ToIList<TContract,TView>(IListContract<TContract>, Converter<TContract,TView>, Converter<TView,TContract>)

Convierte la colección IListContract<T> especificada en una colección IList<T> utilizando adaptadores de convertidor.

public:
generic <typename TContract, typename TView>
 static System::Collections::Generic::IList<TView> ^ ToIList(System::AddIn::Contract::IListContract<TContract> ^ collection, Converter<TContract, TView> ^ contractViewAdapter, Converter<TView, TContract> ^ viewContractAdapter);
public static System.Collections.Generic.IList<TView> ToIList<TContract,TView> (System.AddIn.Contract.IListContract<TContract> collection, Converter<TContract,TView> contractViewAdapter, Converter<TView,TContract> viewContractAdapter);
static member ToIList : System.AddIn.Contract.IListContract<'Contract> * Converter<'Contract, 'View> * Converter<'View, 'Contract> -> System.Collections.Generic.IList<'View>
Public Shared Function ToIList(Of TContract, TView) (collection As IListContract(Of TContract), contractViewAdapter As Converter(Of TContract, TView), viewContractAdapter As Converter(Of TView, TContract)) As IList(Of TView)

Parámetros de tipo

TContract

Tipo que define el contrato para pasar objetos de tipo TView más allá del límite de aislamiento.

TView

Tipo que define la vista de los objetos de la lista.

Parámetros

collection
IListContract<TContract>

Colección que se va a pasar al otro lado de la canalización.

contractViewAdapter
Converter<TContract,TView>

Convertidor que adapta los datos del tipo definido en el contrato al tipo que se espera en la vista.

viewContractAdapter
Converter<TView,TContract>

Convertidor que adapta los datos del tipo definido en la vista al tipo que se espera en el contrato.

Devoluciones

IList<TView>

Colección que se ha convertido.

Comentarios

Use esta sobrecarga de método para IListContract<T> colecciones que contienen tipos que deben adaptarse antes de que se puedan pasar al complemento o al host (en lugar de tipos serializables simples que se pueden pasar directamente). La aplicación host o el complemento pueden usar la colección devuelta IList<T> . Tendrá un token de duración para el remoto IListContract<T>.

Se aplica a