CollectionAdapters.ToIList Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
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
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>.