Bagikan melalui


CollectionAdapters.ToIList Metode

Definisi

Overload

ToIList<T>(IListContract<T>)

Mengonversi koleksi yang ditentukan IListContract<T> menjadi IList<T> koleksi.

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

Mengonversi koleksi tertentu IListContract<T> ke IList<T> koleksi dengan menggunakan adaptor konverter.

ToIList<T>(IListContract<T>)

Mengonversi koleksi yang ditentukan IListContract<T> menjadi IList<T> koleksi.

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)

Jenis parameter

T

Jenis objek yang terkandung dalam daftar. T harus dapat diserialisasikan.

Parameter

collection
IListContract<T>

Koleksi dari sisi lain alur.

Mengembalikan

Koleksi yang dikonversi.

Contoh

Contoh berikut mengimplementasikan segmen alur adaptor sisi host seperti yang dijelaskan Panduan: Meneruskan Koleksi Antara Host dan Add-In. Contohnya mengadaptasi metode kustom ProcessBooks dengan mengambil koleksi yang IListContract<T> diteruskan dari add-in dan mengonversinya menjadi IList<T> koleksi, yang kemudian dapat digunakan aplikasi host.

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

Keterangan

Aplikasi host atau add-in dapat menggunakan koleksi yang dikembalikan IList<T> . Koleksi IList<T> akan memiliki token seumur hidup untuk koleksi jarak jauh IListContract<T> .

Anda harus menggunakan metode ini kelebihan beban hanya ketika konten jenis IListContract<T> yang dapat diserialisasikan yang dapat diteruskan langsung ke add-in dan host (bukan jenis yang harus disesuaikan ke dalam tampilan).

Berlaku untuk

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

Mengonversi koleksi tertentu IListContract<T> ke IList<T> koleksi dengan menggunakan adaptor konverter.

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)

Jenis parameter

TContract

Jenis yang menentukan kontrak untuk meneruskan objek jenis TView di seluruh batas isolasi.

TView

Jenis yang menentukan tampilan objek dalam daftar.

Parameter

collection
IListContract<TContract>

Koleksi untuk diteruskan ke sisi lain alur.

contractViewAdapter
Converter<TContract,TView>

Pengonversi yang mengadaptasi data dari jenis yang ditentukan dalam kontrak dengan jenis yang diharapkan dalam tampilan.

viewContractAdapter
Converter<TView,TContract>

Pengonversi yang mengadaptasi data dari jenis yang ditentukan dalam tampilan ke jenis yang diharapkan oleh kontrak.

Mengembalikan

IList<TView>

Koleksi yang dikonversi.

Keterangan

Gunakan metode ini kelebihan beban untuk IListContract<T> koleksi yang berisi jenis yang harus disesuaikan sebelum dapat diteruskan ke add-in atau host (bukan jenis serialisasi sederhana yang dapat diteruskan secara langsung). Aplikasi host atau add-in dapat menggunakan koleksi yang dikembalikan IList<T> . Ini akan memiliki token seumur hidup untuk remote IListContract<T>.

Berlaku untuk