RunningPackagesEnumerator.Current Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Retourne l'objet RunningPackage actuel à partir de la collection.
public:
property Microsoft::SqlServer::Dts::Runtime::RunningPackage ^ Current { Microsoft::SqlServer::Dts::Runtime::RunningPackage ^ get(); };
public Microsoft.SqlServer.Dts.Runtime.RunningPackage Current { get; }
member this.Current : Microsoft.SqlServer.Dts.Runtime.RunningPackage
Public ReadOnly Property Current As RunningPackage
Valeur de propriété
Objet RunningPackage.
Exemples
L’exemple de code suivant crée un énumérateur pour itérer sur les packages en cours d’exécution.
using System;
using System.Collections.Generic;
using System.Text;
using Microsoft.SqlServer.Dts.Runtime;
namespace RunningPackages
{
class Program
{
static void Main(string[] args)
{
Application app = new Application();
RunningPackages pkgs = app.GetRunningPackages("YOURSERVER");
int pkgsRunning = pkgs.Count;
Console.WriteLine("Packages before stop: " + pkgsRunning);
// Get the RunningPackages collection from the package.
RunningPackages runPkgs = app.GetRunningPackages("YOURSERVER ");
//Create the Enumerator.
RunningPackagesEnumerator myEnumerator = runPkgs.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.PackageDescription);
}
}
}
Imports System
Imports System.Collections.Generic
Imports System.Text
Imports Microsoft.SqlServer.Dts.Runtime
Namespace RunningPackages
Class Program
Shared Sub Main(ByVal args() As String)
Dim app As Application = New Application()
Dim pkgs As RunningPackages = app.GetRunningPackages("YOURSERVER")
Dim pkgsRunning As Integer = pkgs.Count
Console.WriteLine("Packages before stop: " + pkgsRunning)
' Get the RunningPackages collection from the package.
Dim runPkgs As RunningPackages = app.GetRunningPackages("YOURSERVER ")
'Create the Enumerator.
Dim myEnumerator As RunningPackagesEnumerator = runPkgs.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
Remarques
Une fois qu’un énumérateur est créé ou après un appel à la Reset
méthode, la MoveNext
méthode doit être appelée pour faire passer l’énumérateur au premier élément de la collection avant que l’énumérateur puisse lire la valeur de la Current propriété ; sinon, Current elle n’est pas définie et lève une exception.
Current lève également une exception si le dernier appel à MoveNext
retourner false
, qui indique la fin de la collection.
Current ne déplace pas la position de l’énumérateur et les appels consécutifs pour Current retourner le même objet tant que l’un MoveNext
ou Reset
l’autre n’est pas appelé.
Un énumérateur reste valide aussi longtemps que la collection demeure inchangée. Si des modifications sont apportées à la collection, telles que l’ajout, la modification ou la suppression d’éléments, l’énumérateur est invalidé et devient irrécupérable ; ainsi, l’appel suivant à MoveNext
ou Reset
lève un InvalidOperationException
. Toutefois, si la collection est modifiée entre les appels et MoveNext
Current, Current retourne l’élément sur lequel il est défini, même si l’énumérateur a été invalidé.