Condividi tramite


CollectionAdapters.ToIList Metodo

Definizione

Overload

Nome Descrizione
ToIList<T>(IListContract<T>)

Converte la raccolta specificata IListContract<T> in una IList<T> raccolta.

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

Converte una raccolta specificata IListContract<T> in una IList<T> raccolta utilizzando adattatori convertitori.

ToIList<T>(IListContract<T>)

Converte la raccolta specificata IListContract<T> in una IList<T> raccolta.

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)

Parametri di tipo

T

Tipo di oggetti contenuti nell'elenco. T deve essere serializzabile.

Parametri

collection
IListContract<T>

Raccolta dall'altra parte della pipeline.

Valori restituiti

Raccolta convertita.

Esempio

L'esempio seguente implementa un segmento di pipeline di adattatori sul lato host. L'esempio adatta il metodo personalizzato ProcessBooks prendendo la IListContract<T> raccolta passata dal componente aggiuntivo e convertendola in una IList<T> raccolta, che l'applicazione host può quindi usare.

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

Commenti

L'applicazione host o il componente aggiuntivo possono usare la raccolta restituita IList<T> . La IList<T> raccolta avrà un token di durata per la raccolta remota IListContract<T> .

È consigliabile usare questo overload del metodo solo quando il contenuto di IListContract<T> sono tipi serializzabili che possono essere passati direttamente al componente aggiuntivo e all'host (anziché ai tipi che devono essere adattati in visualizzazioni).

Si applica a

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

Converte una raccolta specificata IListContract<T> in una IList<T> raccolta utilizzando adattatori convertitori.

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)

Parametri di tipo

TContract

Tipo che definisce il contratto per il passaggio di oggetti di tipo TView attraverso il limite di isolamento.

TView

Tipo che definisce la visualizzazione degli oggetti nell'elenco.

Parametri

collection
IListContract<TContract>

Raccolta da passare all'altro lato della pipeline.

contractViewAdapter
Converter<TContract,TView>

Convertitore che adatta i dati dal tipo definito nel contratto al tipo previsto nella visualizzazione.

viewContractAdapter
Converter<TView,TContract>

Convertitore che adatta i dati dal tipo definito nella vista al tipo previsto dal contratto.

Valori restituiti

IList<TView>

Raccolta convertita.

Commenti

Utilizzare questo overload del metodo per IListContract<T> le raccolte che contengono tipi che devono essere adattati prima che possano essere passati al componente aggiuntivo o all'host ( anziché semplici tipi serializzabili che possono essere passati direttamente). L'applicazione host o il componente aggiuntivo possono usare la raccolta restituita IList<T> . Avrà un token di durata per l'oggetto remoto IListContract<T>.

Si applica a