DataServiceCollection<T> Constructor (DataServiceContext, IEnumerable<T>, TrackingMode, String, Func<EntityChangedParams, Boolean>, Func<EntityCollectionChangedParams, Boolean>)


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

Creates a new instance of the DataServiceCollection<T> class a based on query execution, with the supplied change method delegates, and that uses the supplied DataServiceContext.

Namespace:   System.Data.Services.Client
Assembly:  System.Data.Services.Client (in System.Data.Services.Client.dll)

public DataServiceCollection(
	DataServiceContext context,
	IEnumerable<T> items,
	TrackingMode trackingMode,
	string entitySetName,
	Func<EntityChangedParams, bool> entityChangedCallback,
	Func<EntityCollectionChangedParams, bool> collectionChangedCallback


Type: System.Data.Services.Client.DataServiceContext

The DataServiceContext used to track items in the collection.

Type: System.Collections.Generic.IEnumerable<T>

A DataServiceQuery<TElement> or LINQ query that returns an IEnumerable<T> collection of objects that are used to initialize the collection.

Type: System.Data.Services.Client.TrackingMode

A TrackingMode value that indicated whether or not changes made to items in the collection are automatically tracked.

Type: System.String

The entity set of the objects in the collection.

Type: System.Func<EntityChangedParams, Boolean>

A delegate that encapsulates a method that is called when an entity changes.

Type: System.Func<EntityCollectionChangedParams, Boolean>

A delegate that encapsulates a method that is called when the collection of entities changes.

By default, automatic change tracking is enabled for a DataServiceCollection<T>. Use this class constructor to supply a value of None for trackingMode to create an instance of DataServiceCollection<T> that uses manual change tracking. When you use manual tracking, you must implement INotifyPropertyChanged and INotifyCollectionChanged and handle the raise events to manually report changes to the DataServiceContext.

The DataServiceContext must be supplied when items is not a DataServiceQuery<TElement> or QueryOperationResponse<T> that has a reference to a DataServiceContext instance.

The entityChanged and collectionChanged functions are invoked by the PropertyChanged and CollectionChanged events, respectively. The entityChanged method takes an EntityCollectionChangedParams value and the collectionChanged method takes a EntityChangedParams value. Both methods must return a Boolean value that indicates whether the event was handled by the function. When the method returns true, the default behavior will still occur.

.NET Framework
Available since 3.5
Available since 4.0
Return to top