CollectionAdapters.ToIListContract 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
ToIListContract<T>(IList<T>) |
Mengonversi koleksi yang ditentukan IList<T> menjadi IListContract<T> koleksi. |
ToIListContract<TView,TContract>(IList<TView>, Converter<TView,TContract>, Converter<TContract,TView>) |
Mengonversi koleksi tertentu IList<T> ke IListContract<T> koleksi dengan menggunakan adaptor konverter. |
ToIListContract<T>(IList<T>)
Mengonversi koleksi yang ditentukan IList<T> menjadi IListContract<T> koleksi.
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)
Jenis parameter
- T
Jenis objek yang terkandung dalam daftar. T
harus dapat diserialisasikan.
Parameter
- collection
- IList<T>
Koleksi yang akan dikonversi.
Mengembalikan
Koleksi yang dikonversi.
Contoh
Contoh berikut mengimplementasikan kelas yang menentukan segmen alur adaptor sisi add-in. Ini menyesuaikan metode kustom ProcessBooks
dengan mengambil IList<T> koleksi yang diteruskan dari segmen tampilan add-in dan mengonversinya menjadi IListContract<T> koleksi yang dapat dinamai di seluruh batas isolasi ke host.
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
Keterangan
Koleksi IListContract<T> dapat dinamai di seluruh batas isolasi antara add-in dan aplikasi hostnya.
Anda harus menggunakan metode ini kelebihan beban hanya ketika konten koleksi adalah jenis yang dapat diserialisasikan IList<T> yang dapat diteruskan langsung ke kontrak (bukan jenis yang harus disesuaikan ke dalam kontrak).
Berlaku untuk
ToIListContract<TView,TContract>(IList<TView>, Converter<TView,TContract>, Converter<TContract,TView>)
Mengonversi koleksi tertentu IList<T> ke IListContract<T> koleksi dengan menggunakan adaptor konverter.
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)
Jenis parameter
- TView
Jenis yang menentukan tampilan objek dalam daftar.
- TContract
Jenis yang mendefinisikan kontrak untuk meneruskan objek jenis TView
di seluruh batas isolasi.
Parameter
- collection
- IList<TView>
Koleksi yang akan dikonversi.
- viewContractAdapter
- Converter<TView,TContract>
Pengonversi yang mengadaptasi data dari jenis yang ditentukan dalam tampilan ke jenis yang diharapkan oleh kontrak.
- contractViewAdapter
- Converter<TContract,TView>
Pengonversi yang mengadaptasi data dari jenis yang ditentukan dalam kontrak dengan jenis yang diharapkan dalam tampilan.
Mengembalikan
Koleksi yang dikonversi.
Keterangan
Gunakan metode ini kelebihan beban untuk IList<T> koleksi yang berisi jenis yang harus disesuaikan ke dalam kontrak sebelum dapat diteruskan ke kontrak (bukan jenis serialisasi sederhana yang dapat diteruskan secara langsung). Koleksi IListContract<T> dapat dinamai di seluruh batas isolasi antara add-in dan aplikasi hostnya.