CollectionAdapters.ToIList Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Sobrecargas
| Nombre | Description |
|---|---|
| ToIList<T>(IListContract<T>) |
Convierte la colección especificada IListContract<T> en una IList<T> colección. |
| ToIList<TContract,TView>(IListContract<TContract>, Converter<TContract,TView>, Converter<TView,TContract>) |
Convierte una colección especificada IListContract<T> en una IList<T> colección mediante adaptadores de convertidor. |
ToIList<T>(IListContract<T>)
Convierte la colección especificada IListContract<T> en una IList<T> colección.
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 que se encuentran en la lista.
T debe ser serializable.
Parámetros
- collection
- IListContract<T>
Colección del otro lado de la canalización.
Devoluciones
Colección convertida.
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 una colección especificada IListContract<T> en una IList<T> colección mediante 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 a través 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 esperado en la vista.
- viewContractAdapter
- Converter<TView,TContract>
Convertidor que adapta los datos del tipo definido en la vista al tipo esperado por el contrato.
Devoluciones
Colección convertida.
Comentarios
Use esta sobrecarga de método para IListContract<T> las 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>.