Compartir a través de


CollectionAdapters.ToIListContract Método

Definición

Sobrecargas

ToIListContract<T>(IList<T>)

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

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

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

ToIListContract<T>(IList<T>)

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

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 incluidos en la lista. T debe ser serializable.

Parámetros

collection
IList<T>

Colección que se va a convertir.

Devoluciones

Colección que se ha convertido.

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 se deben adaptar a contratos).

Se aplica a

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

Convierte la colección IList<T> especificada en una colección IListContract<T> utilizando 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 más allá 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 que se espera en el contrato.

contractViewAdapter
Converter<TContract,TView>

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

Devoluciones

IListContract<TContract>

Colección que se ha convertido.

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