Freigeben über


ForEachLoop.PrecedenceConstraints Eigenschaft

Definition

Gibt eine PrecedenceConstraints-Auflistung zurück, die alle der ForEachLoop zugeordneten Rangfolgeneinschränkungen enthält.

public:
 property Microsoft::SqlServer::Dts::Runtime::PrecedenceConstraints ^ PrecedenceConstraints { Microsoft::SqlServer::Dts::Runtime::PrecedenceConstraints ^ get(); };
public Microsoft.SqlServer.Dts.Runtime.PrecedenceConstraints PrecedenceConstraints { get; }
member this.PrecedenceConstraints : Microsoft.SqlServer.Dts.Runtime.PrecedenceConstraints
Public ReadOnly Property PrecedenceConstraints As PrecedenceConstraints

Eigenschaftswert

Eine PrecedenceConstraints-Auflistung.

Implementiert

Beispiele

Im folgenden Codebeispiel wird mithilfe der Properties Auflistung eine ForEachLoop Eigenschaft erstellt und festgelegt. Zwei Aufgaben werden der Executables Auflistung hinzugefügt, und eine Rangfolgeeinschränkung wird zwischen ihnen eingefügt.

// Create the package.  
Package package = new Package();  
// Add variables.  
package.Variables.Add("Id", false, "User", 0);  

// Create ForEachLoop task  
Executables executables = package.Executables;  
ForEachLoop forEachLoop = executables.Add("STOCK:FOREACHLOOP") as ForEachLoop;  

// The ForEachLoop is a container. Add some task executables and  
// create a precedence constraint. The tasks can run when  
// certain conditions in the loop are met.  
TaskHost thLoopMail = (TaskHost)forEachLoop.Executables.Add("STOCK:SendMailTask");  
TaskHost thLoopInsert = (TaskHost)forEachLoop.Executables.Add("STOCK:BulkInsertTask");  
Executables loopExecs = forEachLoop.Executables;  
Console.WriteLine("Number of Executables in ForLoop: {0}", loopExecs.Count);  

// Like other containers, precedence constraints can be set on the  
// contained tasks.  
PrecedenceConstraint pc = forEachLoop.PrecedenceConstraints.Add((Executable)thLoopMail, thLoopInsert);  
PrecedenceConstraints pcs = forEachLoop.PrecedenceConstraints;  
Console.WriteLine("Number of precedence constraints: {0}", pcs.Count);  
' Create the package.  
Dim package As Package =  New Package()   
' Add variables.  
package.Variables.Add("Id", False, "User", 0)  

' Create ForEachLoop task  
Dim executables As Executables =  package.Executables   
Dim forEachLoop As ForEachLoop =  executables.Add("STOCK:FOREACHLOOP") as ForEachLoop   

' The ForEachLoop is a container. Add some task executables and  
' create a precedence constraint. The tasks can run when  
' certain conditions in the loop are met.  
Dim thLoopMail As TaskHost = CType(forEachLoop.Executables.Add("STOCK:SendMailTask"), TaskHost)  
Dim thLoopInsert As TaskHost = CType(forEachLoop.Executables.Add("STOCK:BulkInsertTask"), TaskHost)  
Dim loopExecs As Executables =  forEachLoop.Executables   
Console.WriteLine("Number of Executables in ForLoop: {0}", loopExecs.Count)  

' Like other containers, precedence constraints can be set on the  
' contained tasks.  
Dim pc As PrecedenceConstraint =  forEachLoop.PrecedenceConstraints.Add(CType(thLoopMail,thLoopInsert, Executable))   
Dim pcs As PrecedenceConstraints =  forEachLoop.PrecedenceConstraints   
Console.WriteLine("Number of precedence constraints: {0}", pcs.Count)  

Beispielausgabe:

Anzahl der ausführbaren Dateien in ForLoop: 2

Anzahl der Rangfolgeeinschränkungen: 1

Hinweise

Die Reihenfolge der Ausführung der Objekte in der Auflistung wird durch den PrecedenceConstraints hinzugefügten Container bestimmt. PrecedenceConstraints Ermöglichen Sie die Ausführungsverzweigung basierend auf dem Erfolg, Fehler oder Abschluss einer ausführbaren Datei in der Auflistung.

Gilt für: