CollectionAdapters.ToIListContract 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 |
|---|---|
| ToIListContract<T>(IList<T>) |
Konverterar en angiven IList<T> samling till en IListContract<T> samling. |
| ToIListContract<TView,TContract>(IList<TView>, Converter<TView,TContract>, Converter<TContract,TView>) |
Konverterar en angiven IList<T> samling till en IListContract<T> samling med hjälp av konverterarkort. |
ToIListContract<T>(IList<T>)
Konverterar en angiven IList<T> samling till en IListContract<T> samling.
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)
Typparametrar
- T
Typen av objekt som finns i listan.
T måste vara serialiserbar.
Parametrar
- collection
- IList<T>
Samlingen som ska konverteras.
Returer
Den konverterade samlingen.
Exempel
I följande exempel implementeras klassen som definierar ett pipelinesegment för tilläggssidan. Den anpassar den anpassade ProcessBooks metoden genom att ta IList<T> samlingen som skickas från tilläggsvysegmentet och konvertera den till en IListContract<T> samling som kan konverteras över isoleringsgränsen till värden.
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
Kommentarer
Samlingen IListContract<T> kan konverteras över isoleringsgränsen mellan tillägget och dess värdprogram.
Du bör endast använda den här metodens överlagring när innehållet i IList<T> samlingen är serialiserbara typer som kan skickas direkt till kontraktet (i stället för typer som måste anpassas till kontrakt).
Gäller för
ToIListContract<TView,TContract>(IList<TView>, Converter<TView,TContract>, Converter<TContract,TView>)
Konverterar en angiven IList<T> samling till en IListContract<T> samling med hjälp av konverterarkort.
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)
Typparametrar
- TView
Den typ som definierar vyn för objekten i listan.
- TContract
Den typ som definierar kontraktet för att skicka objekt av typen TView över isoleringsgränsen.
Parametrar
- collection
- IList<TView>
Samlingen som ska konverteras.
- 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.
- 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.
Returer
Den konverterade samlingen.
Kommentarer
Använd den här metodens överlagring för samlingar som innehåller typer som måste anpassas till kontrakt innan de kan skickas till kontraktet (i stället för IList<T> enkla serialiserbara typer som kan skickas direkt). Samlingen IListContract<T> kan konverteras över isoleringsgränsen mellan ett tillägg och dess värdprogram.