PipelineComponentInfoEnumerator.Current Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Получает текущий PipelineComponentInfo элемент из коллекции.
public:
property Microsoft::SqlServer::Dts::Runtime::PipelineComponentInfo ^ Current { Microsoft::SqlServer::Dts::Runtime::PipelineComponentInfo ^ get(); };
public Microsoft.SqlServer.Dts.Runtime.PipelineComponentInfo Current { get; }
member this.Current : Microsoft.SqlServer.Dts.Runtime.PipelineComponentInfo
Public ReadOnly Property Current As PipelineComponentInfo
Значение свойства
Текущий PipelineComponentInfo элемент коллекции.
Примеры
Следующий пример кода создаёт переписчик, а затем использует методы Current и MoveNext для навигации по коллекции.
[C#]
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;
namespace TaskInfos_Item
{
class Program
{
static void Main(string[] args)
{
Application app = new Application();
PipelineComponentInfos pInfos = app.PipelineComponentInfos;
//Create the Enumerator.
PipelineComponentInfoEnumerator myEnumerator= pInfos.GetEnumerator();
Console.WriteLine("The collection contains the following values:");
int i = 0;
while ((myEnuemrator.MoveNext()) && (myEnuemrator.Current != null))
Console.WriteLine("[{0}] {1}", i++, myEnuemrator.Current.Name);
}
}
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
Namespace TaskInfos_Item
Class Program
Shared Sub Main(ByVal args() As String)
Dim app As Application = New Application()
Dim pInfos As PipelineComponentInfos = app.PipelineComponentInfos
'Create the Enumerator.
Dim myEnumeratorAs PipelineComponentInfoEnumerator = pInfos.GetEnumerator()
Console.WriteLine("The collection contains the following values:")
Dim i As Integer = 0
While (myEnuemrator.MoveNext()) &&(myEnuemrator.Current <> Nothing)
Console.WriteLine("[{0}] {1}",i = Console.WriteLine("[{0}] {1}",i + 1
End While
End Sub
End Class
End Namespace
Пример вывода:
Коллекция содержит следующие значения:
[0] Слияние
[1] Слияние Объединение
[2] Поиск
[3] Аудит
[4] Выборка рядов
[5] Обработка размерностей
[6] Терминовая экстракция
[7] Обучение моделям анализа данных
[8] Исходный код OLE DB
[9] Карта персонажей
[10] Нечеткая группировка
Комментарии
После создания переписчика или после вызова Reset метода MoveNext необходимо вызвать метод, чтобы перевести переписчик к первому элементу коллекции до того, как переписчик сможет прочитать значение Current свойства; в противном случае Current он не определен, и создаётся исключение.
Current также вызывает исключение, если последний вызов MoveNext возвращаемого falseобъекта, указывающий конец коллекции.
Current не перемещает позицию перечислителя и последовательные вызовы для Current возврата одного и того же объекта до MoveNext вызова или Reset вызова.
Перечислитель остается допустимым, пока коллекция остается неизменной. Если в коллекцию вносятся изменения, такие как добавление, изменение или удаление элементов, переписчик считается недействительным и становится невосстановимым; Таким образом, следующий вызов в MoveNext или Reset вызывает InvalidOperationException. Однако, если коллекция изменяется между вызовами MoveNext и Current, Current возвращает элемент, на который она настроена, даже если переписчик был аналирован.