CollectionAdapters.ToIList Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
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
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>.