CollectionAdapters.ToIList メソッド

定義

オーバーロード

名前 説明
ToIList<T>(IListContract<T>)

指定した IListContract<T> コレクションを IList<T> コレクションに変換します。

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

コンバーター アダプターを使用して、指定した IListContract<T> コレクションを IList<T> コレクションに変換します。

ToIList<T>(IListContract<T>)

指定した IListContract<T> コレクションを IList<T> コレクションに変換します。

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)

型パラメーター

T

リストに含まれるオブジェクトの種類。 T はシリアル化可能である必要があります。

パラメーター

collection
IListContract<T>

パイプラインの反対側からのコレクション。

返品

変換されたコレクション。

次の例では、「チュートリアル: ホストとアドインの間でコレクションを渡す」の説明に従って、ホスト側アダプター パイプライン セグメントを実装します。この例では、アドインから渡されたProcessBooks コレクションを取得し、それをホスト アプリケーションが使用できるIListContract<T> コレクションに変換することで、カスタム IList<T> メソッドを調整します。

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

注釈

ホスト アプリケーションまたはアドインは、返された IList<T> コレクションを使用できます。 IList<T> コレクションには、リモート IListContract<T> コレクションの有効期間トークンがあります。

このメソッドオーバーロードは、 IListContract<T> の内容が、(ビューに適合する必要がある型ではなく) アドインとホストに直接渡すことができるシリアル化可能な型である場合にのみ使用する必要があります。

適用対象

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

コンバーター アダプターを使用して、指定した IListContract<T> コレクションを IList<T> コレクションに変換します。

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)

型パラメーター

TContract

分離境界を越えて TView 型のオブジェクトを渡すためのコントラクトを定義する型。

TView

リスト内のオブジェクトのビューを定義する型。

パラメーター

collection
IListContract<TContract>

パイプラインの反対側に渡すコレクション。

contractViewAdapter
Converter<TContract,TView>

コントラクトで定義されている型のデータをビューで想定される型に適合させるコンバーター。

viewContractAdapter
Converter<TView,TContract>

ビューで定義されている型のデータをコントラクトで予期される型に適合させるコンバーター。

返品

IList<TView>

変換されたコレクション。

注釈

アドインまたはホストに渡す前に調整する必要がある型を含む IListContract<T> コレクションには、(直接渡すことができる単純なシリアル化可能な型ではなく) このメソッド オーバーロードを使用します。 ホスト アプリケーションまたはアドインは、返された IList<T> コレクションを使用できます。 リモート IListContract<T>の有効期間トークンが含まれます。

適用対象