ForEachEnumeratorInfosEnumerator.Current Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает текущий ForEachEnumeratorInfo объект из коллекции.
public:
property Microsoft::SqlServer::Dts::Runtime::ForEachEnumeratorInfo ^ Current { Microsoft::SqlServer::Dts::Runtime::ForEachEnumeratorInfo ^ get(); };
public Microsoft.SqlServer.Dts.Runtime.ForEachEnumeratorInfo Current { get; }
member this.Current : Microsoft.SqlServer.Dts.Runtime.ForEachEnumeratorInfo
Public ReadOnly Property Current As ForEachEnumeratorInfo
Значение свойства
Текущий ForEachEnumeratorInfo объект в коллекции.
Примеры
Следующий пример кода создаёт переписчик, а затем использует методы Current и MoveNext для навигации по коллекции.
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;
using Microsoft.SqlServer.Dts.Runtime.Enumerators.Item;
namespace ForEachEnums
{
class Program
{
static void Main(string[] args)
{
Application app = new Application();
ForEachEnumeratorInfos feInfos = app.ForEachEnumeratorInfos;
//Create the Enumerator.
ForEachEnumeratorInfosEnumerator myEnumerator = feInfos.GetEnumerator();
Console.WriteLine("The collection contains the following values:");
int i = 0;
while ((myEnumerator.MoveNext()) && (myEnumerator.Current != null))
Console.WriteLine("[{0}] {1}", i++, myEnumerator.Current.Name);
}
}
}
Пример вывода:
Коллекция содержит следующие значения:
[0] Для каждого переписчика файла
[1] Для каждого переписчика элементов
[2] Для каждого переписчика ADO
[3] Для каждого переписчика рядов схем ADO.NET
[4] Для каждого из переменного перечислителя
[5] Для каждого переписчика NodeList
[6] Для каждого переписчика SMO
Комментарии
После создания переписчика или вызова метода Reset необходимо вызвать метод MoveNext для перемещения переписчика в первый элемент коллекции до того, как переписчик сможет прочитать значение свойства Current ; в противном случае Current не определён и создаёт исключение.
Current также создаёт исключение, если последний вызов MoveNext вернулся false, что означает конец коллекции.
Current не перемещает позицию переписчика, и последовательные вызовы Current возвращают тот же объект до вызова MoveNext или Reset .
Перечислитель остается допустимым, пока коллекция остается неизменной. Если в коллекцию вносятся изменения, такие как добавление, изменение или удаление элементов, переписчик считается недействительным и становится невосстановимым; таким образом, следующий вызов MoveNext или Reset вызывает InvalidOperationException. Однако, если коллекция изменяется между вызовами MoveNext и Current, Current возвращает элемент, на который она настроена, даже если переписчик был аннулирован.