Export (0) Print
Expand All
Expand Minimize
This topic has not yet been rated - Rate this topic

DTSBreakpointHitTest Enumeration

Enumerates the values for the hit count types. This class works with the BreakpointTarget class.

Namespace:  Microsoft.SqlServer.Dts.Runtime
Assembly:  Microsoft.SqlServer.ManagedDTS (in Microsoft.SqlServer.ManagedDTS.dll)
public enum DTSBreakpointHitTest
Member nameDescription
AlwaysExecution is always suspended when the breakpoint is hit.
EqualExecution is suspended when the number of times the breakpoint has occurred is equal to the hit count.
ExpressionExecution is suspended when the expression changes.
GreaterOrEqualExecution is suspended when the number of times the breakpoint has occurred is equal to or greater than the hit count.
MultipleExecution is suspended when a multiple of the hit count occurs.

To add flexibility and power to a breakpoint, you can modify the behavior of a breakpoint by configuring the breakpoint hit count, which specifies the number of times a breakpoint occurs before the run-time engine is suspended, and the hit count type, which contains an expression that specifies when the breakpoint is hit. This value is used in the HitTest property.

The following code example modifies the default value of a BreakpointTarget using this enumeration.

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

namespace Microsoft.SqlServer.SSIS.Samples
{
    class Program
    {
        static void Main(string[] args)
        {
            Package pkg = new Package();
            TaskHost taskHost = (TaskHost)pkg.Executables.Add("STOCK:FileSystemTask");
            BreakpointTargets bptargets = pkg.GetBreakpointTargets(taskHost, false);

            // Get the first breakpoint in the collection.
            BreakpointTargetEnumerator myEnumerator = bptargets.GetEnumerator();
            myEnumerator.MoveNext();
            BreakpointTarget bptFirstOne = myEnumerator.Current;

            // Display the initial values.
            Console.WriteLine("Description              {0}", bptFirstOne.Description);
            Console.WriteLine("Enabled?                 {0}", bptFirstOne.Enabled);
            Console.WriteLine("HitTest                  {0}", bptFirstOne.HitTest);
            Console.WriteLine("ID                       {0}", bptFirstOne.ID);
            Console.WriteLine("--------------------------------------------");

            // Modify the default value of HitTest.
            myEnumerator.Reset();
            myEnumerator.MoveNext();
            bptFirstOne = myEnumerator.Current;
            bptFirstOne.HitTest = DTSBreakpointHitTest.Equal;

            // Display the values again, including the new HitTest.
            Console.WriteLine("Description              {0}", bptFirstOne.Description);
            Console.WriteLine("Enabled?                 {0}", bptFirstOne.Enabled);
            Console.WriteLine("HitTest                  {0}", bptFirstOne.HitTest);
            Console.WriteLine("ID                       {0}", bptFirstOne.ID);
        }
    }
}

Sample Output:

Description Break when the container receives the OnPreExecute event

Enabled? False

HitTest Always

ID -2147483647

--------------------------------------------

Description Break when the container receives the OnPreExecute event

Enabled? False

HitTest Equal

ID -2147483647

Did you find this helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft. All rights reserved.