Share via


CollectionAdapters.ToIListContract 메서드

정의

오버로드

ToIListContract<T>(IList<T>)

지정된 IList<T> 컬렉션을 IListContract<T> 컬렉션으로 변환합니다.

ToIListContract<TView,TContract>(IList<TView>, Converter<TView,TContract>, Converter<TContract,TView>)

변환기 어댑터를 사용하여 지정된 IList<T> 컬렉션을 IListContract<T> 컬렉션으로 변환합니다.

ToIListContract<T>(IList<T>)

지정된 IList<T> 컬렉션을 IListContract<T> 컬렉션으로 변환합니다.

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)

형식 매개 변수

T

목록에 들어 있는 개체의 형식입니다. T는 serialize할 수 있어야 합니다.

매개 변수

collection
IList<T>

변환할 컬렉션입니다.

반환

변환된 컬렉션입니다.

예제

다음 예제에서는 추가 기능 쪽 어댑터 파이프라인 세그먼트를 정의 하는 클래스를 구현 합니다. 사용자 지정에 적응 ProcessBooks 수행 하 여 메서드를 IList<T> 으로 변환 하는 추가 기능 뷰 세그먼트에서 전달 된 컬렉션을 IListContract<T> 호스트에는 격리 경계를 넘어 마샬링될 수 있는 컬렉션입니다.

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

설명

IListContract<T> 컬렉션 추가 기능과 해당 호스트 애플리케이션 간의 격리 경계를 넘어 마샬링될 수 있습니다.

이 메서드 오버 로드를 사용 해야 경우에만의 콘텐츠는 IList<T> 수집 되는 계약 대신 계약에 맞게 조정 해야 하는 형식에 직접 전달할 수 있는 직렬화 가능 형식입니다.

적용 대상

ToIListContract<TView,TContract>(IList<TView>, Converter<TView,TContract>, Converter<TContract,TView>)

변환기 어댑터를 사용하여 지정된 IList<T> 컬렉션을 IListContract<T> 컬렉션으로 변환합니다.

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)

형식 매개 변수

TView

목록에 있는 개체의 뷰를 정의하는 형식입니다.

TContract

격리 경계를 넘어 TView 형식의 개체를 전달하기 위한 계약을 정의하는 형식입니다.

매개 변수

collection
IList<TView>

변환할 컬렉션입니다.

viewContractAdapter
Converter<TView,TContract>

뷰에 정의된 형식의 데이터를 계약에 필요한 형식에 맞게 조정하는 변환기입니다.

contractViewAdapter
Converter<TContract,TView>

계약에 정의된 형식의 데이터를 뷰에 필요한 형식에 맞게 조정하는 변환기입니다.

반환

IListContract<TContract>

변환된 컬렉션입니다.

설명

이 메서드 오버 로드를 사용 하 여 IList<T> 는 계약 대신 직접 전달할 수 있는 간단한 직렬화 가능 형식에 전달 될 수 전에 계약에 맞게 조정 해야 하는 형식을 포함 하는 컬렉션입니다. IListContract<T> 컬렉션으로 추가 기능 및 해당 호스트 애플리케이션 간의 격리 경계를 넘어 마샬링될 수 있습니다.

적용 대상