共用方式為


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>)

使用提供的變更方法委派,以及使用指定的 DataServiceContext,建立 DataServiceCollection<T> 類別的新實例。

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> 實例,讓您提供 TrackingModeNone 值。 當您使用手動追蹤時,必須實作 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>

傳回用來初始化集合之物件的 IEnumerable<T> 集合 DataServiceQuery<TElement> 或LINQ查詢。

備註

提供給 items 之物件的 IEnumerable<T> 集合通常是傳回集合中項目的查詢。 不過,可以提供正確型別的任何 IEnumerable<T> 集合。

根據預設,會針對 DataServiceCollection<T>啟用自動變更追蹤。 當您使用建構函式建立實例時,您可以建立使用手動變更追蹤的 DataServiceCollection<T> 實例,讓您提供 TrackingModeNone 值。 當您使用手動追蹤時,必須實作 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> 實例,讓您提供 TrackingModeNone 值。 當您使用手動追蹤時,必須實作 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>

傳回用來初始化集合之物件的 IEnumerable<T> 集合 DataServiceQuery<TElement> 或LINQ查詢。

trackingMode
TrackingMode

TrackingMode 值,指出是否會自動追蹤對集合中專案所做的變更。

備註

根據預設,會針對 DataServiceCollection<T>啟用自動變更追蹤。 使用這個類別建構函式,並提供 None 值給 trackingMode,以建立使用手動變更追蹤的 DataServiceCollection<T> 實例。 當您使用手動追蹤時,必須實作 INotifyPropertyChangedINotifyCollectionChanged 並處理引發事件,以手動報告 DataServiceContext的變更。

提供給 items 之物件的 IEnumerable<T> 集合通常是傳回集合中項目的查詢。 不過,可以提供正確型別的任何 IEnumerable<T> 集合。

適用於

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

使用提供的變更方法委派,以及使用指定的 DataServiceContext,建立 DataServiceCollection<T> 類別的新實例。

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> 實例,讓您提供 TrackingModeNone 值。 當您使用手動追蹤時,必須實作 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>

傳回用來初始化集合之物件的 IEnumerable<T> 集合 DataServiceQuery<TElement> 或LINQ查詢。

trackingMode
TrackingMode

TrackingMode 值,指出是否會自動追蹤對集合中專案所做的變更。

entitySetName
String

集合中 對象的實體集。

entityChangedCallback
Func<EntityChangedParams,Boolean>

委派,封裝實體變更時所呼叫的方法。

collectionChangedCallback
Func<EntityCollectionChangedParams,Boolean>

委派,封裝實體集合變更時所呼叫的方法。

備註

entityChangedcollectionChanged 函式分別由 PropertyChangedCollectionChanged 事件叫用。 entityChanged 方法會採用 EntityCollectionChangedParams 值,而 collectionChanged 方法會採用 EntityChangedParams 值。 這兩種方法都必須傳回 Boolean 值,指出事件是否由函式處理。 當方法傳回 true時,預設行為仍會發生。

根據預設,會針對 DataServiceCollection<T>啟用自動變更追蹤。 當您使用建構函式建立實例時,您可以建立使用手動變更追蹤的 DataServiceCollection<T> 實例,讓您提供 TrackingModeNone 值。 當您使用手動追蹤時,必須實作 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>

傳回用來初始化集合之物件的 IEnumerable<T> 集合 DataServiceQuery<TElement> 或LINQ查詢。

trackingMode
TrackingMode

TrackingMode 值,指出是否會自動追蹤對集合中專案所做的變更。

entitySetName
String

集合中 對象的實體集。

entityChangedCallback
Func<EntityChangedParams,Boolean>

委派,封裝實體變更時所呼叫的方法。

collectionChangedCallback
Func<EntityCollectionChangedParams,Boolean>

委派,封裝實體集合變更時所呼叫的方法。

備註

根據預設,會針對 DataServiceCollection<T>啟用自動變更追蹤。 使用這個類別建構函式來提供 trackingModeNone 值,以建立使用手動變更追蹤的 DataServiceCollection<T> 實例。 當您使用手動追蹤時,必須實作 INotifyPropertyChangedINotifyCollectionChanged 並處理引發事件,以手動報告 DataServiceContext的變更。

items 不是具有 DataServiceContext 實例參考的 DataServiceQuery<TElement>QueryOperationResponse<T> 時,必須提供 DataServiceContext

entityChangedcollectionChanged 函式分別由 PropertyChangedCollectionChanged 事件叫用。 entityChanged 方法會採用 EntityCollectionChangedParams 值,而 collectionChanged 方法會採用 EntityChangedParams 值。 這兩種方法都必須傳回 Boolean 值,指出事件是否由函式處理。 當方法傳回 true時,預設行為仍會發生。

適用於