IDTSRuntimeConnectionCollection100.GetEnumerator 方法

定義

public:
 System::Collections::IEnumerator ^ GetEnumerator();
[System.Runtime.InteropServices.DispId(-4)]
public System.Collections.IEnumerator GetEnumerator();
[<System.Runtime.InteropServices.DispId(-4)>]
abstract member GetEnumerator : unit -> System.Collections.IEnumerator
Public Function GetEnumerator () As IEnumerator

傳回

一個能夠遍歷 的 IDTSRuntimeConnectionCollection100列舉器。

實作

屬性

備註

列舉器僅允許讀取集合中的資料。 列舉器無法用來修改底層集合。

最初,列舉器會被放置在集合中的第一個元素之前。 重置 也會讓列舉器回到這個位置。 此時呼叫 Current 會拋出例外。 因此,您必須呼叫 MoveNext 將列舉器推進到集合的第一個元素,才能讀取 Current 的值。

Current 會回傳相同的物件,直到呼叫 MoveNextReset 其中一方。 MoveNextCurrent 設定為下一個元素。

當集合結束後,列舉器會被置於集合的最後一個元素之後,呼叫 MoveNext 則回傳 false。 如果最後一次呼叫 MoveNext傳 false,呼叫 Current 會拋出例外。 要將 Current 設回集合的第一個元素,你可以先呼叫 Reset ,接著呼叫 MoveNext

只要集合未曾改變,列舉器仍然有效。 若對集合進行變更,例如新增、修改或刪除元素,列舉子將無法恢復失效,下一次呼叫 MoveNextReset 會拋出 InvalidOperationException。 如果集合在 MoveNextCurrent 之間被修改, Current 會回傳它所設定的元素,即使列舉器已經失效。

列舉值沒有集合的獨佔存取權;因此,透過集合列舉本質上不是安全線程的程式。 即使集合同步處理,其他線程仍然可以修改集合,這會導致列舉值擲回例外狀況。 若要保證列舉期間的線程安全性,您可以在整個列舉期間鎖定集合,或攔截其他線程所做的變更所產生的例外狀況。

適用於