CollectionAdapters.ToIList Metod
Definition
Viktigt
En del information gäller för förhandsversionen av en produkt och kan komma att ändras avsevärt innan produkten blir allmänt tillgänglig. Microsoft lämnar inga garantier, uttryckliga eller underförstådda, avseende informationen som visas här.
Överlagringar
| Name | Description |
|---|---|
| ToIList<T>(IListContract<T>) |
Konverterar den angivna IListContract<T> samlingen till en IList<T> samling. |
| ToIList<TContract,TView>(IListContract<TContract>, Converter<TContract,TView>, Converter<TView,TContract>) |
Konverterar en angiven IListContract<T> samling till en IList<T> samling med hjälp av konverterarkort. |
ToIList<T>(IListContract<T>)
Konverterar den angivna IListContract<T> samlingen till en IList<T> samling.
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)
Typparametrar
- T
Typen av objekt som finns i listan.
T måste vara serialiserbar.
Parametrar
- collection
- IListContract<T>
Samlingen från andra sidan pipelinen.
Returer
Den konverterade samlingen.
Exempel
I följande exempel implementeras ett pipelinesegment på värdsidan enligt beskrivningen Genomgång: Skicka samlingar mellan värdar och tillägg. Exemplet anpassar den anpassade ProcessBooks metoden genom att ta IListContract<T> samlingen som skickades från tillägget och konvertera den till en IList<T> samling, som värdprogrammet sedan kan använda.
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
Kommentarer
Värdprogrammet eller tillägget kan använda den returnerade IList<T> samlingen. Samlingen IList<T> har en livstidstoken för fjärrsamlingen IListContract<T> .
Du bör endast använda den här metodens överlagring när innehållet i IListContract<T> är serialiserbara typer som kan skickas direkt till tillägget och värden (i stället för typer som måste anpassas till vyer).
Gäller för
ToIList<TContract,TView>(IListContract<TContract>, Converter<TContract,TView>, Converter<TView,TContract>)
Konverterar en angiven IListContract<T> samling till en IList<T> samling med hjälp av konverterarkort.
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)
Typparametrar
- TContract
Den typ som definierar kontraktet för att skicka objekt av typen TView över isoleringsgränsen.
- TView
Den typ som definierar vyn för objekten i listan.
Parametrar
- collection
- IListContract<TContract>
Samlingen som ska skickas till den andra sidan av pipelinen.
- contractViewAdapter
- Converter<TContract,TView>
En konverterare som anpassar data från den typ som definierats i kontraktet till den typ som förväntas i vyn.
- viewContractAdapter
- Converter<TView,TContract>
En konverterare som anpassar data från den typ som definierats i vyn till den typ som förväntas av kontraktet.
Returer
Den konverterade samlingen.
Kommentarer
Använd den här metodens överbelastning för samlingar som innehåller typer som måste anpassas innan de kan skickas till tillägget eller värden (i stället för IListContract<T> enkla serialiserbara typer som kan skickas direkt). Värdprogrammet eller tillägget kan använda den returnerade IList<T> samlingen. Den har en livstidstoken för fjärren IListContract<T>.