Aracılığıyla paylaş


DtsEnumerator Sınıfı

Uygulayan bir soyut temel sınıf tanımlar IEnumerator yöntemleri.

Devralma Hiyerarşisi

System.Object
  Microsoft.SqlServer.Dts.Runtime.DtsEnumerator
    Diğer...

Ad Alanı:  Microsoft.SqlServer.Dts.Runtime
Derleme:  Microsoft.SqlServer.ManagedDTS (Microsoft.SqlServer.ManagedDTS içinde.dll)

Sözdizimi

'Bildirim
Public MustInherit Class DtsEnumerator _
    Implements IEnumerator
'Kullanım
Dim instance As DtsEnumerator
public abstract class DtsEnumerator : IEnumerator
public ref class DtsEnumerator abstract : IEnumerator
[<AbstractClassAttribute>]
type DtsEnumerator =  
    class
        interface IEnumerator
    end
public abstract class DtsEnumerator implements IEnumerator

DtsEnumerator türü aşağıdaki üyeleri açıklar.

Oluşturucular

  Ad Açıklama
Ortak yöntem DtsEnumerator Yeni bir başlatır örnek , DtsEnumerator WalkTree

Üst

Özellikler

  Ad Açıklama
Ortak özellik Current Geçerli öğe alır koleksiyon.

Üst

Yöntemler

  Ad Açıklama
Ortak yöntem Equals (Object öğesinden devralınmıştır.)
Korumalı yöntem Finalize (Object öğesinden devralınmıştır.)
Ortak yöntem GetHashCode (Object öğesinden devralınmıştır.)
Ortak yöntem GetType (Object öğesinden devralınmıştır.)
Korumalı yöntem MemberwiseClone (Object öğesinden devralınmıştır.)
Ortak yöntem MoveNext Numaralandırıcı için sonraki öğeye ilerler koleksiyon.
Ortak yöntem Reset Önce ilk öğe olan başlangıç konumunu, numaralayıcı ayarlar koleksiyon.
Ortak yöntem ToString (Object öğesinden devralınmıştır.)

Üst

Açıklamalar

DtsEnumeratorTaban arabirim için tüm numaralandırıcıları.DtsEnumerator Verir koleksiyonu içindeki verilerin yalnızca okuma ve değiştirme kullanılmaztemel alınan koleksiyon.

Başlangıçta, ilk öğe önce numaralayıcı yerleştirilir koleksiyon.ResetAyrıca numaralayıcı bu konuma getirir.AT bu getirin, arama Current atar bir özel durum.Bu nedenle, çağırmanız gerekir MoveNext ilk öğe için numaralayıcı ilerlemek için koleksiyon değeri okunurken önce Current.

Currentkadar ya da aynı nesnesi döndüren MoveNext veya Reset denir.MoveNextayarlar Current sonraki öğe.

Sonunda koleksiyon olan geçirilen, numaralayıcı içinde son öğesinden sonra yerleştirilir koleksiyonve MoveNext verir yanlış.Son çağrısı, MoveNext döndürülen yanlış, arama Current atar bir özel durum.İçin küme Current için yeniden koleksiyonun ilk öğesinden çağrısı Reset ardından MoveNext.

Bir Numaralandırıcı geçerli kalır sürece koleksiyon değişmeden kalır.Değişiklik, koleksiyon, gibi ekleme, değiştirme veya öğeleri silme numaralayıcı irrecoverably geçersiz kılınan ve sonraki çağrı için MoveNext veya Reset atar bir InvalidOperationException.Koleksiyon arasında değiştirilirse MoveNext ve Current, Current onu öğesini döndürür küme kadar numaralayıcı önceden geçersiz kılınan bile.

Numaralayıcı özel kullanım erişimine sahip koleksiyon; Bu nedenle üzerinden numaralandırma bir koleksiyon iş parçacığı-safe yordam değildir.Diğer iş bile ne zaman bir koleksiyon eşitlenir, neden olan bir özel durum numaralayıcı koleksiyonu, yine de değiştirebilir.Numaralandırma sırasında iş parçacığı güvenliği garanti için kilit toplama sırasında tüm numaralandırma veya değiştirilmesinden kaynaklanan özel durumları diğer iş parçacıkları tarafından yapılan catch.

Örnekler

Aşağıdaki kod örneği, bir paket için bir görev ekler, sonra paketi çalıştırır.Uyarılar koleksiyon oluşturarak gösterilen bir WarningEnumerator, bu miras, DtsEnumerator , sınıf ve görüntüler her uyarı açıklaması.

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

Örnek Çıktı:

Uyarıların sayısı paketi çalıştırmadan önce: 0

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

Paket çalıştırdıktan sonra paketi uyarı sayısı: 2

Koleksiyon aşağıdaki değerleri içerir:

[0] Adresine gönderen satırında düzgün biçimlendirilmez.Eksik olan bir @ veya geçerli değil.

[1] Boş konusudur

İş Parçacığı Güvenliği

Bu türdeki tüm ortak static (Visual Basic'te Shared) üyeler iş parçacığı için güvenlidir. Herhangi bir örnek üyenin iş parçacığı için güvenli olduğu garanti edilmemiştir.

Devralma Hiyerarşisi

System.Object
  Microsoft.SqlServer.Dts.Runtime.DtsEnumerator
    Microsoft.SqlServer.Dts.Runtime.BreakpointTargetEnumerator
    Microsoft.SqlServer.Dts.Runtime.ConfigurationEnumerator
    Microsoft.SqlServer.Dts.Runtime.ConnectionEnumerator
    Microsoft.SqlServer.Dts.Runtime.ConnectionInfoEnumerator
    Microsoft.SqlServer.Dts.Runtime.DBProviderInfoEnumerator
    Microsoft.SqlServer.Dts.Runtime.DtsEventHandlerEnumerator
    Microsoft.SqlServer.Dts.Runtime.ErrorEnumerator
    Microsoft.SqlServer.Dts.Runtime.EventInfoEnumerator
    Microsoft.SqlServer.Dts.Runtime.ExecutableEnumerator
    Microsoft.SqlServer.Dts.Runtime.ExtendedPropertyEnumerator
    Microsoft.SqlServer.Dts.Runtime.ForEachEnumeratorInfosEnumerator
    Microsoft.SqlServer.Dts.Runtime.ForEachVariableMappingEnumerator
    Microsoft.SqlServer.Dts.Runtime.LogEntryInfoEnumerator
    Microsoft.SqlServer.Dts.Runtime.LogProviderEnumerator
    Microsoft.SqlServer.Dts.Runtime.LogProviderInfoEnumerator
    Microsoft.SqlServer.Dts.Runtime.PackageInfoEnumerator
    Microsoft.SqlServer.Dts.Runtime.PipelineComponentInfoEnumerator
    Microsoft.SqlServer.Dts.Runtime.PrecedenceConstraintEnumerator
    Microsoft.SqlServer.Dts.Runtime.PropertyEnumerator
    Microsoft.SqlServer.Dts.Runtime.RunningPackagesEnumerator
    Microsoft.SqlServer.Dts.Runtime.TaskInfoEnumerator
    Microsoft.SqlServer.Dts.Runtime.VariableEnumerator
    Microsoft.SqlServer.Dts.Runtime.WarningEnumerator