Freigeben über


CollectionAdapters.ToIListContract Methode

Definition

Überlädt

ToIListContract<T>(IList<T>)

Konvertiert eine angegebene IList<T>-Auflistung in eine IListContract<T>-Auflistung.

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

Konvertiert eine angegebene IList<T>-Auflistung unter Verwendung von Konverteradaptern in eine IListContract<T>-Auflistung.

ToIListContract<T>(IList<T>)

Konvertiert eine angegebene IList<T>-Auflistung in eine IListContract<T>-Auflistung.

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)

Typparameter

T

Der Typ von Objekten, die in der Liste enthalten sind. T muss serialisierbar sein.

Parameter

collection
IList<T>

Die zu konvertierende Auflistung.

Gibt zurück

Die konvertierte Auflistung.

Beispiele

Im folgenden Beispiel wird die -Klasse implementiert, die ein Pipelinesegment für add-In-Seitenadapter definiert. Sie passt die benutzerdefinierte ProcessBooks Methode an, indem sie die IList<T> auflistung aus dem Add-In-Ansichtssegment übergeben und in eine IListContract<T> Auflistung konvertiert, die über die Isolationsgrenze an den Host gemarst werden kann.

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

Hinweise

Die IListContract<T> Auflistung kann über die Isolationsgrenze zwischen dem Add-In und seiner Hostanwendung gemarst werden.

Sie sollten diese Methode nur verwenden, wenn es sich bei den Inhalten der IList<T> Auflistung um serialisierbare Typen handelt, die direkt an den Vertrag übergeben werden können (anstatt Typen, die in Verträge angepasst werden müssen).

Gilt für:

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

Konvertiert eine angegebene IList<T>-Auflistung unter Verwendung von Konverteradaptern in eine IListContract<T>-Auflistung.

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)

Typparameter

TView

Der Typ, der die Ansicht der Objekte in der Liste definiert.

TContract

Der Typ, der den Vertrag für über die Isolationsgrenze hinweg übergebene Objekte vom Typ TView definiert.

Parameter

collection
IList<TView>

Die zu konvertierende Auflistung.

viewContractAdapter
Converter<TView,TContract>

Ein Konverter, der die Daten des in der Ansicht definierten Typs an den Typ anpasst, der vom Vertrag erwartet wird.

contractViewAdapter
Converter<TContract,TView>

Ein Konverter, der die Daten des im Vertrag definierten Typs an den Typ anpasst, der in der Ansicht erwartet wird.

Gibt zurück

IListContract<TContract>

Die konvertierte Auflistung.

Hinweise

Verwenden Sie diese Methodenüberladung für IList<T> Sammlungen, die Typen enthalten, die in Verträge angepasst werden müssen, bevor sie an den Vertrag übergeben werden können (anstelle einfacher serialisierbarer Typen, die direkt übergeben werden können). Die IListContract<T> Auflistung kann über die Isolationsgrenze zwischen einem Add-In und seiner Hostanwendung gemarst werden.

Gilt für: