Sdílet prostřednictvím


CollectionAdapters.ToIListContract Metoda

Definice

Přetížení

ToIListContract<T>(IList<T>)

Převede zadanou IList<T> kolekci na kolekci IListContract<T> .

ToIListContract<TView,TContract>(IList<TView>, Converter<TView,TContract>, Converter<TContract,TView>)

Převede zadanou IList<T> kolekci na kolekci IListContract<T> pomocí adaptérů převaděčů.

ToIListContract<T>(IList<T>)

Převede zadanou IList<T> kolekci na kolekci 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)

Parametry typu

T

Typ objektů, které jsou obsaženy v seznamu. T musí být serializovatelné.

Parametry

collection
IList<T>

Kolekce, která se má převést.

Návraty

Převedená kolekce.

Příklady

Následující příklad implementuje třídu , která definuje segment kanálu adaptéru na straně doplňku. Přizpůsobí vlastní ProcessBooks metodu tak, že převezme IList<T> kolekci předanou ze segmentu zobrazení doplňku a převede ji na IListContract<T> kolekci, která může být uspořádaná přes hranici izolace k hostiteli.

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

Poznámky

Kolekci IListContract<T> je možné uspořádat přes hranici izolace mezi doplňkem a jeho hostitelskou aplikací.

Tuto metodu byste měli použít pouze v případě, že obsah IList<T> kolekce jsou serializovatelné typy, které mohou být předány přímo kontraktu (místo typů, které musí být upraveny na kontrakty).

Platí pro

ToIListContract<TView,TContract>(IList<TView>, Converter<TView,TContract>, Converter<TContract,TView>)

Převede zadanou IList<T> kolekci na kolekci IListContract<T> pomocí adaptérů převaděčů.

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)

Parametry typu

TView

Typ, který definuje zobrazení objektů v seznamu.

TContract

Typ, který definuje kontrakt pro předávání objektů typu TView přes hranici izolace.

Parametry

collection
IList<TView>

Kolekce, která se má převést.

viewContractAdapter
Converter<TView,TContract>

Převaděč, který přizpůsobí data z typu definovaného v zobrazení typu očekávanému kontraktem.

contractViewAdapter
Converter<TContract,TView>

Převaděč, který přizpůsobí data z typu definovaného v kontraktu na typ očekávaný v zobrazení.

Návraty

IListContract<TContract>

Převedená kolekce.

Poznámky

Použijte tuto metodu přetížení pro IList<T> kolekce, které obsahují typy, které musí být upraveny do kontraktů před jejich předáním kontraktu (spíše než jednoduché serializovatelné typy, které mohou být předány přímo). Kolekci IListContract<T> je možné uspořádat přes hranici izolace mezi doplňkem a jeho hostitelskou aplikací.

Platí pro