Compartilhar via


CollectionAdapters.ToIList Método

Definição

Sobrecargas

ToIList<T>(IListContract<T>)

Converte a coleção IListContract<T> especificada em uma coleção IList<T>.

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

Converte uma coleção IListContract<T> especificada em uma coleção IList<T> usando adaptadores conversores.

ToIList<T>(IListContract<T>)

Converte a coleção IListContract<T> especificada em uma coleção 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

O tipo de objetos contidos na lista. T deve ser serializável.

Parâmetros

collection
IListContract<T>

A coleção do outro lado do pipeline.

Retornos

A coleção convertida.

Exemplos

O exemplo a seguir implementa um segmento de pipeline do adaptador do lado do host, conforme descrito passo a passo : passando coleções entre hosts e suplementos. O exemplo adapta o método personalizado ProcessBooks pegando a IListContract<T> coleção passada do suplemento e convertendo-a em uma IList<T> coleção, que o aplicativo host pode 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

Comentários

O aplicativo host ou suplemento pode usar a coleção retornada IList<T> . A IList<T> coleção terá um token de tempo de vida para a coleção remota IListContract<T> .

Você deve usar essa sobrecarga de método somente quando o conteúdo do IListContract<T> for de tipos serializáveis que podem ser passados diretamente para o suplemento e o host (em vez de tipos que devem ser adaptados para exibições).

Aplica-se a

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

Converte uma coleção IListContract<T> especificada em uma coleção IList<T> usando adaptadores conversores.

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

O tipo que define o contrato para passar objetos do tipo TView através do limite de isolamento.

TView

O tipo que define a exibição dos objetos na lista.

Parâmetros

collection
IListContract<TContract>

A coleção a passar para o outro lado do pipeline.

contractViewAdapter
Converter<TContract,TView>

Um conversor que se adapta os dados do tipo definido no contrato para o tipo esperado na exibição.

viewContractAdapter
Converter<TView,TContract>

Um conversor que se adapta os dados do tipo definido na exibição para o tipo esperado no contrato.

Retornos

IList<TView>

A coleção convertida.

Comentários

Use essa sobrecarga de método para IListContract<T> coleções que contêm tipos que devem ser adaptados antes que possam ser passados para o suplemento ou host (em vez de tipos serializáveis simples que podem ser passados diretamente). O aplicativo host ou suplemento pode usar a coleção retornada IList<T> . Ele terá um token de tempo de vida para o remoto IListContract<T>.

Aplica-se a