CollectionAdapters.ToIListContract 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
ToIListContract<T>(IList<T>) |
Converte un insieme IList<T> specificato in un insieme IListContract<T>. |
ToIListContract<TView,TContract>(IList<TView>, Converter<TView,TContract>, Converter<TContract,TView>) |
Converte un insieme IList<T> specificato in un insieme IListContract<T> mediante adattatori del convertitore. |
ToIListContract<T>(IList<T>)
Converte un insieme IList<T> specificato in un insieme 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)
Parametri di tipo
- T
Tipo di oggetti contenuti nell'elenco. T
deve essere serializzabile.
Parametri
- collection
- IList<T>
Raccolta da convertire.
Restituisce
Insieme convertito.
Esempio
Nell'esempio seguente viene implementata la classe che definisce un segmento di pipeline dell'adattatore laterale del componente aggiuntivo. Adatta il metodo personalizzato ProcessBooks
prendendo la IList<T> raccolta passata dal segmento di visualizzazione del componente aggiuntivo e convertendola in una IListContract<T> raccolta che può essere sottoposto a marshalling attraverso il limite di isolamento all'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
Commenti
La IListContract<T> raccolta può essere sottoposto a marshalling attraverso il limite di isolamento tra il componente aggiuntivo e l'applicazione host.
È consigliabile utilizzare questo overload di metodo solo quando il contenuto della IList<T> raccolta è tipi serializzabili che possono essere passati direttamente al contratto (anziché tipi che devono essere adattati in contratti).
Si applica a
ToIListContract<TView,TContract>(IList<TView>, Converter<TView,TContract>, Converter<TContract,TView>)
Converte un insieme IList<T> specificato in un insieme IListContract<T> mediante adattatori del convertitore.
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)
Parametri di tipo
- TView
Tipo che definisce la visualizzazione degli oggetti nell'elenco.
- TContract
Tipo che definisce il contratto per il passaggio di oggetti di tipo TView
attraverso il limite di isolamento.
Parametri
- collection
- IList<TView>
Raccolta da convertire.
- viewContractAdapter
- Converter<TView,TContract>
Convertitore che adatta i dati dal tipo definito nella visualizzazione al tipo previsto dal contratto.
- contractViewAdapter
- Converter<TContract,TView>
Convertitore che adatta i dati dal tipo definito nel contratto al tipo previsto nella visualizzazione.
Restituisce
Insieme convertito.
Commenti
Utilizzare questo overload del metodo per IList<T> le raccolte che contengono tipi che devono essere adattati nei contratti prima che possano essere passati al contratto (anziché semplici tipi serializzabili che possono essere passati direttamente). La IListContract<T> raccolta può essere sottoposto a marshalling attraverso il limite di isolamento tra un componente aggiuntivo e l'applicazione host.