DataServiceCollection<T> 构造函数

定义

创建 DataServiceCollection<T> 类的新实例。

重载

DataServiceCollection<T>()

创建 DataServiceCollection<T> 类的新实例。

DataServiceCollection<T>(IEnumerable<T>)

基于查询执行创建 DataServiceCollection<T> 类的新实例。

DataServiceCollection<T>(DataServiceContext)

创建使用指定 DataServiceContextDataServiceCollection<T> 类的新实例。

DataServiceCollection<T>(IEnumerable<T>, TrackingMode)

基于查询执行和指定的跟踪模式创建 DataServiceCollection<T> 类的新实例。

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

使用提供的更改方法委托创建 DataServiceCollection<T> 类的新实例,并使用指定的 DataServiceContext

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

基于查询执行和提供的更改方法委托创建 DataServiceCollection<T> 类的新实例。

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

使用提供的更改方法委托创建 DataServiceCollection<T> 类的新实例,并使用提供的 DataServiceContext

DataServiceCollection<T>()

创建 DataServiceCollection<T> 类的新实例。

public:
 DataServiceCollection();
public DataServiceCollection ();
Public Sub New ()

注解

默认情况下,为 DataServiceCollection<T>启用自动更改跟踪。 使用构造函数创建实例时,可以创建使用手动更改跟踪的 DataServiceCollection<T> 实例,以便为 TrackingMode提供 None 值。 使用手动跟踪时,必须实现 INotifyPropertyChangedINotifyCollectionChanged 并处理引发事件以手动报告对 DataServiceContext的更改。

自动更改跟踪在项加载到集合后开始。

适用于

DataServiceCollection<T>(IEnumerable<T>)

基于查询执行创建 DataServiceCollection<T> 类的新实例。

public:
 DataServiceCollection(System::Collections::Generic::IEnumerable<T> ^ items);
public DataServiceCollection (System.Collections.Generic.IEnumerable<T> items);
new System.Data.Services.Client.DataServiceCollection<'T> : seq<'T> -> System.Data.Services.Client.DataServiceCollection<'T>
Public Sub New (items As IEnumerable(Of T))

参数

items
IEnumerable<T>

一个 DataServiceQuery<TElement> 或 LINQ 查询,该查询返回用于初始化集合的对象 IEnumerable<T> 集合。

注解

items 提供的对象 IEnumerable<T> 集合通常是返回集合中的项的查询。 但是,可以提供正确类型的任何 IEnumerable<T> 集合。

默认情况下,为 DataServiceCollection<T>启用自动更改跟踪。 使用构造函数创建实例时,可以创建使用手动更改跟踪的 DataServiceCollection<T> 实例,以便为 TrackingMode提供 None 值。 使用手动跟踪时,必须实现 INotifyPropertyChangedINotifyCollectionChanged 并处理引发事件以手动报告对 DataServiceContext的更改。

适用于

DataServiceCollection<T>(DataServiceContext)

创建使用指定 DataServiceContextDataServiceCollection<T> 类的新实例。

public:
 DataServiceCollection(System::Data::Services::Client::DataServiceContext ^ context);
public DataServiceCollection (System.Data.Services.Client.DataServiceContext context);
new System.Data.Services.Client.DataServiceCollection<'T> : System.Data.Services.Client.DataServiceContext -> System.Data.Services.Client.DataServiceCollection<'T>
Public Sub New (context As DataServiceContext)

参数

context
DataServiceContext

用于跟踪集合中对象的更改的 DataServiceContext

注解

使用此构造函数可以创建一个空 DataServiceCollection<T>,可以在不对服务执行查询或 IEnumerable<T> 不可用的情况下向其添加实体对象。

默认情况下,为 DataServiceCollection<T>启用自动更改跟踪。 使用构造函数创建实例时,可以创建使用手动更改跟踪的 DataServiceCollection<T> 实例,以便为 TrackingMode提供 None 值。 使用手动跟踪时,必须实现 INotifyPropertyChangedINotifyCollectionChanged 并处理引发事件以手动报告对 DataServiceContext的更改。

适用于

DataServiceCollection<T>(IEnumerable<T>, TrackingMode)

基于查询执行和指定的跟踪模式创建 DataServiceCollection<T> 类的新实例。

public:
 DataServiceCollection(System::Collections::Generic::IEnumerable<T> ^ items, System::Data::Services::Client::TrackingMode trackingMode);
public DataServiceCollection (System.Collections.Generic.IEnumerable<T> items, System.Data.Services.Client.TrackingMode trackingMode);
new System.Data.Services.Client.DataServiceCollection<'T> : seq<'T> * System.Data.Services.Client.TrackingMode -> System.Data.Services.Client.DataServiceCollection<'T>
Public Sub New (items As IEnumerable(Of T), trackingMode As TrackingMode)

参数

items
IEnumerable<T>

一个 DataServiceQuery<TElement> 或 LINQ 查询,该查询返回用于初始化集合的对象 IEnumerable<T> 集合。

trackingMode
TrackingMode

一个 TrackingMode 值,该值指示是否自动跟踪对集合中的项所做的更改。

注解

默认情况下,为 DataServiceCollection<T>启用自动更改跟踪。 使用此类构造函数并提供 trackingModeNone 值来创建使用手动更改跟踪的 DataServiceCollection<T> 实例。 使用手动跟踪时,必须实现 INotifyPropertyChangedINotifyCollectionChanged 并处理引发事件以手动报告对 DataServiceContext的更改。

items 提供的对象 IEnumerable<T> 集合通常是返回集合中的项的查询。 但是,可以提供正确类型的任何 IEnumerable<T> 集合。

适用于

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

使用提供的更改方法委托创建 DataServiceCollection<T> 类的新实例,并使用指定的 DataServiceContext

public:
 DataServiceCollection(System::Data::Services::Client::DataServiceContext ^ context, System::String ^ entitySetName, Func<System::Data::Services::Client::EntityChangedParams ^, bool> ^ entityChangedCallback, Func<System::Data::Services::Client::EntityCollectionChangedParams ^, bool> ^ collectionChangedCallback);
public DataServiceCollection (System.Data.Services.Client.DataServiceContext context, string entitySetName, Func<System.Data.Services.Client.EntityChangedParams,bool> entityChangedCallback, Func<System.Data.Services.Client.EntityCollectionChangedParams,bool> collectionChangedCallback);
new System.Data.Services.Client.DataServiceCollection<'T> : System.Data.Services.Client.DataServiceContext * string * Func<System.Data.Services.Client.EntityChangedParams, bool> * Func<System.Data.Services.Client.EntityCollectionChangedParams, bool> -> System.Data.Services.Client.DataServiceCollection<'T>
Public Sub New (context As DataServiceContext, entitySetName As String, entityChangedCallback As Func(Of EntityChangedParams, Boolean), collectionChangedCallback As Func(Of EntityCollectionChangedParams, Boolean))

参数

context
DataServiceContext

用于跟踪集合中的项的 DataServiceContext

entitySetName
String

集合中对象的实体集。

entityChangedCallback
Func<EntityChangedParams,Boolean>

封装实体更改时调用的方法的委托。

collectionChangedCallback
Func<EntityCollectionChangedParams,Boolean>

封装实体集合更改时调用的方法的委托。

注解

使用此构造函数可以创建一个空 DataServiceCollection<T>,可以在不对服务执行查询或 IEnumerable<T> 不可用的情况下向其添加实体对象。

默认情况下,为 DataServiceCollection<T>启用自动更改跟踪。 使用构造函数创建实例时,可以创建使用手动更改跟踪的 DataServiceCollection<T> 实例,以便为 TrackingMode提供 None 值。 使用手动跟踪时,必须实现 INotifyPropertyChangedINotifyCollectionChanged 并处理引发事件以手动报告对 DataServiceContext的更改。

适用于

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

基于查询执行和提供的更改方法委托创建 DataServiceCollection<T> 类的新实例。

public:
 DataServiceCollection(System::Collections::Generic::IEnumerable<T> ^ items, System::Data::Services::Client::TrackingMode trackingMode, System::String ^ entitySetName, Func<System::Data::Services::Client::EntityChangedParams ^, bool> ^ entityChangedCallback, Func<System::Data::Services::Client::EntityCollectionChangedParams ^, bool> ^ collectionChangedCallback);
public DataServiceCollection (System.Collections.Generic.IEnumerable<T> items, System.Data.Services.Client.TrackingMode trackingMode, string entitySetName, Func<System.Data.Services.Client.EntityChangedParams,bool> entityChangedCallback, Func<System.Data.Services.Client.EntityCollectionChangedParams,bool> collectionChangedCallback);
new System.Data.Services.Client.DataServiceCollection<'T> : seq<'T> * System.Data.Services.Client.TrackingMode * string * Func<System.Data.Services.Client.EntityChangedParams, bool> * Func<System.Data.Services.Client.EntityCollectionChangedParams, bool> -> System.Data.Services.Client.DataServiceCollection<'T>
Public Sub New (items As IEnumerable(Of T), trackingMode As TrackingMode, entitySetName As String, entityChangedCallback As Func(Of EntityChangedParams, Boolean), collectionChangedCallback As Func(Of EntityCollectionChangedParams, Boolean))

参数

items
IEnumerable<T>

一个 DataServiceQuery<TElement> 或 LINQ 查询,该查询返回用于初始化集合的对象 IEnumerable<T> 集合。

trackingMode
TrackingMode

一个 TrackingMode 值,该值指示是否自动跟踪对集合中的项所做的更改。

entitySetName
String

集合中对象的实体集。

entityChangedCallback
Func<EntityChangedParams,Boolean>

封装实体更改时调用的方法的委托。

collectionChangedCallback
Func<EntityCollectionChangedParams,Boolean>

封装实体集合更改时调用的方法的委托。

注解

entityChangedcollectionChanged 函数分别由 PropertyChangedCollectionChanged 事件调用。 entityChanged 方法采用 EntityCollectionChangedParams 值,collectionChanged 方法采用 EntityChangedParams 值。 这两种方法必须返回一个布尔值,该值指示该事件是否由函数处理。 当方法返回 true时,默认行为仍然存在。

默认情况下,为 DataServiceCollection<T>启用自动更改跟踪。 使用构造函数创建实例时,可以创建使用手动更改跟踪的 DataServiceCollection<T> 实例,以便为 TrackingMode提供 None 值。 使用手动跟踪时,必须实现 INotifyPropertyChangedINotifyCollectionChanged 并处理引发事件以手动报告对 DataServiceContext的更改。

适用于

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

使用提供的更改方法委托创建 DataServiceCollection<T> 类的新实例,并使用提供的 DataServiceContext

public:
 DataServiceCollection(System::Data::Services::Client::DataServiceContext ^ context, System::Collections::Generic::IEnumerable<T> ^ items, System::Data::Services::Client::TrackingMode trackingMode, System::String ^ entitySetName, Func<System::Data::Services::Client::EntityChangedParams ^, bool> ^ entityChangedCallback, Func<System::Data::Services::Client::EntityCollectionChangedParams ^, bool> ^ collectionChangedCallback);
public DataServiceCollection (System.Data.Services.Client.DataServiceContext context, System.Collections.Generic.IEnumerable<T> items, System.Data.Services.Client.TrackingMode trackingMode, string entitySetName, Func<System.Data.Services.Client.EntityChangedParams,bool> entityChangedCallback, Func<System.Data.Services.Client.EntityCollectionChangedParams,bool> collectionChangedCallback);
new System.Data.Services.Client.DataServiceCollection<'T> : System.Data.Services.Client.DataServiceContext * seq<'T> * System.Data.Services.Client.TrackingMode * string * Func<System.Data.Services.Client.EntityChangedParams, bool> * Func<System.Data.Services.Client.EntityCollectionChangedParams, bool> -> System.Data.Services.Client.DataServiceCollection<'T>
Public Sub New (context As DataServiceContext, items As IEnumerable(Of T), trackingMode As TrackingMode, entitySetName As String, entityChangedCallback As Func(Of EntityChangedParams, Boolean), collectionChangedCallback As Func(Of EntityCollectionChangedParams, Boolean))

参数

context
DataServiceContext

用于跟踪集合中的项的 DataServiceContext

items
IEnumerable<T>

一个 DataServiceQuery<TElement> 或 LINQ 查询,该查询返回用于初始化集合的对象 IEnumerable<T> 集合。

trackingMode
TrackingMode

一个 TrackingMode 值,该值指示是否自动跟踪对集合中的项所做的更改。

entitySetName
String

集合中对象的实体集。

entityChangedCallback
Func<EntityChangedParams,Boolean>

封装实体更改时调用的方法的委托。

collectionChangedCallback
Func<EntityCollectionChangedParams,Boolean>

封装实体集合更改时调用的方法的委托。

注解

默认情况下,为 DataServiceCollection<T>启用自动更改跟踪。 使用此类构造函数为 trackingMode 提供 None 值,以创建使用手动更改跟踪的 DataServiceCollection<T> 实例。 使用手动跟踪时,必须实现 INotifyPropertyChangedINotifyCollectionChanged 并处理引发事件以手动报告对 DataServiceContext的更改。

items 不是对 DataServiceContext 实例具有引用的 DataServiceQuery<TElement>QueryOperationResponse<T> 时,必须提供 DataServiceContext

entityChangedcollectionChanged 函数分别由 PropertyChangedCollectionChanged 事件调用。 entityChanged 方法采用 EntityCollectionChangedParams 值,collectionChanged 方法采用 EntityChangedParams 值。 这两种方法必须返回一个布尔值,该值指示该事件是否由函数处理。 当方法返回 true时,默认行为仍将发生。

适用于