Udostępnij przez


Metoda DtsEnumerator.MoveNext

Moduł wyliczający przechodzi do następnego elementu kolekcja.

Przestrzeń nazw:  Microsoft.SqlServer.Dts.Runtime
Zestaw:  Microsoft.SqlServer.ManagedDTS (w Microsoft.SqlServer.ManagedDTS.dll)

Składnia

'Deklaracja
Public Function MoveNext As Boolean
'Użycie
Dim instance As DtsEnumerator
Dim returnValue As Boolean

returnValue = instance.MoveNext()
public bool MoveNext()
public:
virtual bool MoveNext() sealed
abstract MoveNext : unit -> bool 
override MoveNext : unit -> bool 
public final function MoveNext() : boolean

Wartość zwracana

Typ: System.Boolean
TRUE , jeśli moduł wyliczający został pomyślnie zaawansowane do następnego elementu; FALSE , jeśli moduł wyliczający minął koniec kolekcja.

Implementacje

IEnumerator.MoveNext()

Uwagi

Po utworzeniu moduł wyliczający lub po wywołaniu Reset metoda moduł wyliczający jest umieszczony przed pierwszym elementem kolekcja, a pierwsze wywołanie MoveNext Przenosi modułu wyliczającego nad pierwszym elementem kolekcja.

Po zakończeniu kolekcja jest przekazana, kolejne wywołania MoveNext zwrotu false aż do Reset jest nazywany.

Moduł wyliczający zachowuje ważność tak długo, jak długo kolekcja pozostaje niezmieniony.Jeśli zmian do kolekcja, takie jak dodawanie, modyfikowanie lub usuwanie elementów, moduł wyliczający bezpowrotnie unieważniona i wywołanie następnego MoveNext lub Reset generuje InvalidOperationException.

Przykłady

Poniższy przykład kodu dodaje zadanie do pakietu, a następnie uruchamia pakiet.Kolekcja ostrzeżenia jest tworzony przez tworzenie WarningEnumerator, która dziedziczy to DtsEnumerator klasy i wyświetla każde ostrzeżenie przy użyciu opisu Current i MoveNext metod, aby przejrzeć ostrzeżenia w kolekcji.

using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;
using Microsoft.SqlServer.Dts.Tasks.ExecuteSQLTask;

namespace Microsoft.SqlServer.SSIS.Samples
{
    class Program
    {
        static void Main(string[] args)
        {
            Package package = new Package();
            Console.WriteLine("Package warnings count before running: {0}", package.Warnings.Count);

            TaskHost taskH2 = (TaskHost)package.Executables.Add("STOCK:SendMailTask");
            taskH2.FailPackageOnFailure = false;
            taskH2.FailParentOnFailure = false;
            Console.WriteLine("SendMailTask: {0}", taskH2.ID);
 
            // Test that warnings were successfully added to the collection.
            package.MaximumErrorCount = 100;
            package.FailPackageOnFailure = false;
            package.FailParentOnFailure = false;
            package.DelayValidation = true;
            package.Execute();

            Console.WriteLine("Package warnings count after running the package: {0}", package.Warnings.Count);

            // Create the enumerator.
            WarningEnumerator myEnumerator = package.Warnings.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.Description);
        }
    }
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
Imports Microsoft.SqlServer.Dts.Tasks.ExecuteSQLTask
 
Namespace Microsoft.SqlServer.SSIS.Samples
    Class Program
        Shared  Sub Main(ByVal args() As String)
            Dim package As Package =  New Package() 
            Console.WriteLine("Package warnings count before running: {0}", package.Warnings.Count)
 
            Dim taskH2 As TaskHost = CType(package.Executables.Add("STOCK:SendMailTask"), TaskHost)
            taskH2.FailPackageOnFailure = False
            taskH2.FailParentOnFailure = False
            Console.WriteLine("SendMailTask: {0}", taskH2.ID)
 
            ' Test that warnings were successfully added to the collection.
            package.MaximumErrorCount = 100
            package.FailPackageOnFailure = False
            package.FailParentOnFailure = False
            package.DelayValidation = True
            package.Execute()
 
            Console.WriteLine("Package warnings count after running the package: {0}", package.Warnings.Count)
 
            ' Create the enumerator.
            Dim myEnumerator As WarningEnumerator =  package.Warnings.GetEnumerator() 
            Console.WriteLine("The collection contains the following values:")
            Dim i As Integer =  0 
            While (myEnumerator.MoveNext()) &&(myEnumerator.Current <> Nothing)
                Console.WriteLine("[{0}] {1}",i = Console.WriteLine("[{0}] {1}",i + 1
            End While
        End Sub
    End Class
End Namespace

Przykładowe dane wyjściowe:

Pakiet liczba ostrzeżeń przed uruchomieniem: 0

SendMailTask: {34CAEFF9-64BF-401 D-B646-C88B705DB971}

Liczba ostrzeżeń pakiet po uruchomieniu tego pakietu: 2

Kolekcja zawiera następujące wartości:

[0] Adres w wierszu od nie jest poprawnie uformowany.Jest brak @ lub nie jest prawidłowy.

[1] Podmiotu jest pusty