ForEachLoop.PrecedenceConstraints 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
PrecedenceConstraints와 연결된 모든 선행 제약 조건을 포함하는 ForEachLoop 컬렉션을 반환합니다.
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
속성 값
PrecedenceConstraints 컬렉션입니다.
구현
예제
다음 코드 예제에서는 컬렉션을 사용하여 Properties 일부 속성을 만들고 ForEachLoop 설정합니다. 컬렉션에 두 개의 태스크가 Executables 추가되고 그 사이에 우선 순위 제약 조건이 적용됩니다.
// 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)
샘플 출력:
ForLoop의 실행 파일 수: 2
선행 제약 조건 수: 1
설명
컬렉션에 있는 개체의 실행 순서는 컨테이너에 추가된 개체에 PrecedenceConstraints 의해 결정됩니다. PrecedenceConstraints 컬렉션에서 실행 파일의 성공, 실패 또는 완료에 따라 실행 분기를 허용합니다.