Freigeben über


CollectionAdapters.ToIList Methode

Definition

Überlädt

Name Beschreibung
ToIList<T>(IListContract<T>)

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

ToIList<TContract,TView>(IListContract<TContract>, Converter<TContract,TView>, Converter<TView,TContract>)

Konvertiert eine angegebene IListContract<T> Auflistung mithilfe von Konverteradaptern in eine IList<T> Auflistung.

ToIList<T>(IListContract<T>)

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

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)

Typparameter

T

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

Parameter

collection
IListContract<T>

Die Sammlung von der anderen Seite der Pipeline.

Gibt zurück

Die konvertierte Auflistung.

Beispiele

Im folgenden Beispiel wird ein hostseitiges Adapterpipelinesegment implementiert. Das Beispiel passt die benutzerdefinierte ProcessBooks Methode an, indem die IListContract<T> vom Add-In übergebene Auflistung verwendet und in eine IList<T> Auflistung konvertiert wird, die von der Hostanwendung dann verwendet werden kann.

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

Hinweise

Die Hostanwendung oder das Add-In kann die zurückgegebene IList<T> Sammlung verwenden. Die IList<T> Sammlung verfügt über ein Lebensdauertoken für die Remotesammlung IListContract<T> .

Sie sollten diese Methodenüberladung nur verwenden, wenn der Inhalt der IListContract<T> serialisierbaren Typen, die direkt an das Add-In und Host übergeben werden können (anstatt Typen, die in Ansichten angepasst werden müssen).

Gilt für:

ToIList<TContract,TView>(IListContract<TContract>, Converter<TContract,TView>, Converter<TView,TContract>)

Konvertiert eine angegebene IListContract<T> Auflistung mithilfe von Konverteradaptern in eine IList<T> Auflistung.

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)

Typparameter

TContract

Der Typ, der den Vertrag zum Übergeben von Objekten vom Typ TView über die Isolationsgrenze definiert.

TView

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

Parameter

collection
IListContract<TContract>

Die Sammlung, die an die andere Seite der Pipeline übergeben werden soll.

contractViewAdapter
Converter<TContract,TView>

Ein Konverter, der die Daten aus dem im Vertrag definierten Typ an den typ anpasst, der in der Ansicht erwartet wird.

viewContractAdapter
Converter<TView,TContract>

Ein Konverter, der die Daten aus dem typ anpasst, der in der Ansicht an den vom Vertrag erwarteten Typ angepasst wird.

Gibt zurück

IList<TView>

Die konvertierte Auflistung.

Hinweise

Verwenden Sie diese Methodenüberladung für IListContract<T> Sammlungen, die Typen enthalten, die angepasst werden müssen, bevor sie an das Add-In oder Host übergeben werden können (anstelle einfacher serialisierbarer Typen, die direkt übergeben werden können). Die Hostanwendung oder das Add-In kann die zurückgegebene IList<T> Sammlung verwenden. Es verfügt über ein Lebensdauertoken für die Remoteverbindung IListContract<T>.

Gilt für: