CollectionAdapters.ToIListContract<TView, TContract> Method (IList<TView>, Converter<TView, TContract>, Converter<TContract, TView>)


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Converts a specified IList<T> collection to an IListContract<T> collection by using converter adapters.

Namespace:   System.AddIn.Pipeline
Assembly:  System.AddIn (in System.AddIn.dll)

public static IListContract<TContract> ToIListContract<TView, TContract>(
	IList<TView> collection,
	Converter<TView, TContract> viewContractAdapter,
	Converter<TContract, TView> contractViewAdapter


Type: System.Collections.Generic.IList<TView>

The collection to convert.

Type: System.Converter<TView, TContract>

A converter that adapts the data from the type defined in the view to the type expected by the contract.

Type: System.Converter<TContract, TView>

A converter that adapts the data from the type defined in the contract to the type expected in the view.

Return Value

Type: System.AddIn.Contract.IListContract<TContract>

The converted collection.

Type Parameters


The type that defines the view of the objects in the list.


The type that defines the contract for passing objects of type TView across the isolation boundary.

Use this method overload for IList<T> collections that contain types that must be adapted into contracts before they can be passed to the contract (rather than simple serializable types that can be passed directly). The IListContract<T> collection can be marshaled across the isolation boundary between an add-in and its host application.

.NET Framework
Available since 3.5
Return to top