CollectionAdapters.ToIList Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Przeciążenia
ToIList<T>(IListContract<T>) |
Konwertuje określoną IListContract<T> kolekcję na IList<T> kolekcję. |
ToIList<TContract,TView>(IListContract<TContract>, Converter<TContract,TView>, Converter<TView,TContract>) |
Konwertuje określoną IListContract<T> kolekcję na IList<T> kolekcję przy użyciu adapterów konwertera. |
ToIList<T>(IListContract<T>)
Konwertuje określoną IListContract<T> kolekcję na IList<T> kolekcję.
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)
Parametry typu
- T
Typ obiektów znajdujących się na liście. T
musi być serializowalny.
Parametry
- collection
- IListContract<T>
Kolekcja z drugiej strony potoku.
Zwraca
Przekonwertowana kolekcja.
Przykłady
Poniższy przykład implementuje segment potoku adaptera po stronie hosta zgodnie z opisem Przewodnik: przekazywanie kolekcji między hostami i dodatkiem. Przykład dostosowuje metodę niestandardową ProcessBooks
przez pobranie IListContract<T> kolekcji przekazanej z dodatku i przekonwertowanie jej na IList<T> kolekcję, której następnie może użyć aplikacja hosta.
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
Uwagi
Aplikacja hosta lub dodatek może używać zwróconej IList<T> kolekcji. Kolekcja IList<T> będzie miała token okresu istnienia dla kolekcji zdalnej IListContract<T> .
Należy użyć tego przeciążenia metody tylko wtedy, gdy zawartość IListContract<T> typów można serializować, które można przekazać bezpośrednio do dodatku i hosta (zamiast typów, które muszą być dostosowane do widoków).
Dotyczy
ToIList<TContract,TView>(IListContract<TContract>, Converter<TContract,TView>, Converter<TView,TContract>)
Konwertuje określoną IListContract<T> kolekcję na IList<T> kolekcję przy użyciu adapterów konwertera.
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)
Parametry typu
- TContract
Typ, który definiuje kontrakt przekazywania obiektów typu TView
przez granicę izolacji.
- TView
Typ, który definiuje widok obiektów na liście.
Parametry
- collection
- IListContract<TContract>
Kolekcja do przekazania do drugiej strony potoku.
- contractViewAdapter
- Converter<TContract,TView>
Konwerter, który dostosowuje dane z typu zdefiniowanego w kontrakcie do typu oczekiwanego w widoku.
- viewContractAdapter
- Converter<TView,TContract>
Konwerter, który dostosowuje dane z typu zdefiniowanego w widoku do typu oczekiwanego przez kontrakt.
Zwraca
Przekonwertowana kolekcja.
Uwagi
Użyj tego przeciążenia metody dla IListContract<T> kolekcji, które zawierają typy, które muszą być dostosowane przed przekazaniem ich do dodatku lub hosta (zamiast prostych typów serializacji, które można przekazać bezpośrednio). Aplikacja hosta lub dodatek może używać zwróconej IList<T> kolekcji. Będzie on miał token okresu istnienia dla zdalnego IListContract<T>.