CollectionAdapters.ToIListContract Método

Definición

Sobrecargas

Nombre Description
ToIListContract<T>(IList<T>)

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

ToIListContract<TView,TContract>(IList<TView>, Converter<TView,TContract>, Converter<TContract,TView>)

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

ToIListContract<T>(IList<T>)

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

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

Parámetros de tipo

T

Tipo de objetos que se encuentran en la lista. T debe ser serializable.

Parámetros

collection
IList<T>

Colección que se va a convertir.

Devoluciones

Colección convertida.

Ejemplos

En el ejemplo siguiente se implementa la clase que define un segmento de canalización del adaptador del lado del complemento. Adapta el método personalizado ProcessBooks tomando la IList<T> colección pasada desde el segmento de vista de complemento y convirtiéndola en una IListContract<T> colección que se puede serializar a través del límite de aislamiento al host.

public override void ProcessBooks(IList<LibraryContractsHAV.BookInfo> books) {
    _contract.ProcessBooks(CollectionAdapters.ToIListContract<LibraryContractsHAV.BookInfo,
        Library.IBookInfoContract>(books,
        LibraryContractsHostAdapters.BookInfoHostAdapter.ViewToContractAdapter,
        LibraryContractsHostAdapters.BookInfoHostAdapter.ContractToViewAdapter));
}
Public Overrides Sub ProcessBooks(ByVal books As IList(Of LibraryContractsHAV.BookInfo))
    _contract.ProcessBooks(CollectionAdapters.ToIListContract(Of LibraryContractsHAV.BookInfo, _
    Library.IBookInfoContract)(books, _
    AddressOf LibraryContractsHostAdapters.BookInfoHostAdapter.ViewToContractAdapter, _
    AddressOf LibraryContractsHostAdapters.BookInfoHostAdapter.ContractToViewAdapter))
End Sub

Comentarios

La IListContract<T> colección se puede serializar a través del límite de aislamiento entre el complemento y su aplicación host.

Debe usar esta sobrecarga de método solo cuando el contenido de la IList<T> colección sea tipos serializables que se pueden pasar directamente al contrato (en lugar de tipos que deben adaptarse a contratos).

Se aplica a

ToIListContract<TView,TContract>(IList<TView>, Converter<TView,TContract>, Converter<TContract,TView>)

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

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

Parámetros de tipo

TView

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

TContract

Tipo que define el contrato para pasar objetos de tipo TView a través del límite de aislamiento.

Parámetros

collection
IList<TView>

Colección que se va a convertir.

viewContractAdapter
Converter<TView,TContract>

Convertidor que adapta los datos del tipo definido en la vista al tipo esperado por el contrato.

contractViewAdapter
Converter<TContract,TView>

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

Devoluciones

IListContract<TContract>

Colección convertida.

Comentarios

Use esta sobrecarga de método para IList<T> colecciones que contienen tipos que deben adaptarse a contratos antes de que se puedan pasar al contrato (en lugar de tipos serializables simples que se pueden pasar directamente). La IListContract<T> colección se puede serializar a través del límite de aislamiento entre un complemento y su aplicación host.

Se aplica a