TaskHost TaskHost TaskHost Class

Definition

Provides a container that encapsulates a single task. In the SSIS Designer, the TaskHost is not configured separately; instead, it is configured when you set the properties of the task it encapsulates.

public ref class TaskHost sealed : Microsoft::SqlServer::Dts::Runtime::EventsProvider, Microsoft::SqlServer::Dts::Runtime::IDTSExecutionPath, Microsoft::SqlServer::Dts::Runtime::IDTSObjectHost, Microsoft::SqlServer::Dts::Runtime::IDTSPackagePath, Microsoft::SqlServer::Dts::Runtime::IDTSPropertiesProvider, Microsoft::SqlServer::Dts::Runtime::IDTSPropertiesProviderEx
public sealed class TaskHost : Microsoft.SqlServer.Dts.Runtime.EventsProvider, Microsoft.SqlServer.Dts.Runtime.IDTSExecutionPath, Microsoft.SqlServer.Dts.Runtime.IDTSObjectHost, Microsoft.SqlServer.Dts.Runtime.IDTSPackagePath, Microsoft.SqlServer.Dts.Runtime.IDTSPropertiesProvider, Microsoft.SqlServer.Dts.Runtime.IDTSPropertiesProviderEx
Public NotInheritable Class TaskHost
Inherits EventsProvider
Implements IDTSExecutionPath, IDTSObjectHost, IDTSPackagePath, IDTSPropertiesProvider, IDTSPropertiesProviderEx
Inheritance
Implements

Examples

The following code example shows the creation of an empty package. Two tasks are added to the package and cast into a TaskHost class, so TaskHost methods and properties can be used on either task , such as the InnerObject method, without regard to what kind of task it is.

using System;  
using System.Collections.Generic;  
using System.Text;  
using Microsoft.SqlServer.Dts.Runtime;  
using Microsoft.SqlServer.Dts.Tasks.BulkInsertTask;  
using Microsoft.SqlServer.Dts.Tasks.FileSystemTask;  
  
namespace Microsoft.SqlServer.SSIS.Samples  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {  
            Package p = new Package();  
            // Add a File System task to the package.  
            Executable exec1 = p.Executables.Add("STOCK:FileSystemTask");  
            TaskHost thFileSystemTask = exec1 as TaskHost;  
            // Add a Bulk Insert task to the package.  
            Executable exec2 = p.Executables.Add("STOCK:BulkInsertTask");  
            TaskHost thBulkInsertTask = exec2 as TaskHost;  
  
            // Iterate through the package Executables collection.  
            Executables pExecs = p.Executables;  
            foreach (Executable pExec in pExecs)  
            {  
                TaskHost taskHost = (TaskHost)pExec;  
                Console.WriteLine("Type {0}", taskHost.InnerObject.ToString());  
            }  
        }  
    }  
}  
Imports System  
Imports System.Collections.Generic  
Imports System.Text  
Imports Microsoft.SqlServer.Dts.Runtime  
Imports Microsoft.SqlServer.Dts.Tasks.BulkInsertTask  
Imports Microsoft.SqlServer.Dts.Tasks.FileSystemTask  
  
Namespace Microsoft.SqlServer.SSIS.Samples  
    Class Program  
        Shared  Sub Main(ByVal args() As String)  
            Dim p As Package =  New Package()   
            ' Add a File System task to the package.  
            Dim exec1 As Executable =  p.Executables.Add("STOCK:FileSystemTask")   
            Dim thFileSystemTask As TaskHost =  exec1 as TaskHost   
            ' Add a Bulk Insert task to the package.  
            Dim exec2 As Executable =  p.Executables.Add("STOCK:BulkInsertTask")   
            Dim thBulkInsertTask As TaskHost =  exec2 as TaskHost   
  
            ' Iterate through the package Executables collection.  
            Dim pExecs As Executables =  p.Executables   
            Dim pExec As Executable  
            For Each pExec In pExecs  
                Dim taskHost As TaskHost = CType(pExec, TaskHost)  
                Console.WriteLine("Type {0}", taskHost.InnerObject.ToString())  
            Next  
        End Sub  
    End Class  
End Namespace  

Sample Output:

Type Microsoft.SqlServer.Dts.Tasks.FileSystemTask.FileSystemTask

Type Microsoft.SqlServer.Dts.Tasks.BulkInsertTask.BulkInsertTask

Remarks

Integration Services provides several different types of containers for building packages, with the TaskHost being one of those containers. The TaskHost container provides services to a single task. It does not have a matching item in the graphical designer toolbox. The TaskHost object is a wrapper object for the task, and is created transparently during task creation. It is returned from the Add method as an Executable object and is cast as a TaskHost. Finally, the task instance is accessed through the InnerObject property. For more information on all of the SSIS containers, see Integration Services Containers.

Properties

ApartmentThreaded ApartmentThreaded ApartmentThreaded

Gets a value that indicates whether the task is an apartment-threaded object.

CreationName CreationName CreationName

Returns the string that is used to create an instance of the DtsContainer object. This property is read-only.

(Inherited from DtsContainer)
DebugMode DebugMode DebugMode

Gets or sets a Boolean that indicates whether the DtsContainer object is in debug mode and whether it should fire the OnBreakpointHit(IDTSBreakpointSite, BreakpointTarget) event while running.

(Inherited from DtsContainer)
DelayValidation DelayValidation DelayValidation

Gets or sets a Boolean that indicates whether validation of the task is delayed until run time. The default value is false.

(Inherited from DtsContainer)
Description Description Description

Gets or sets the description of the DtsContainer object.

(Inherited from DtsContainer)
Disable Disable Disable

A Boolean that indicates if the DtsContainer object is disabled.

(Inherited from DtsContainer)
DisableEventHandlers DisableEventHandlers DisableEventHandlers

Gets or sets a Boolean that indicates whether the event handlers on task are disabled.

(Inherited from EventsProvider)
EventHandlers EventHandlers EventHandlers

Returns a collection of event handler objects. This field is read-only.

(Inherited from EventsProvider)
EventInfos EventInfos EventInfos

Returns a collection of EventInfo objects. This field is read-only.

(Inherited from EventsProvider)
ExecutionDuration ExecutionDuration ExecutionDuration

Returns a value that indicates the amount of time that the container spent in execution, in milliseconds. This property is read-only.

(Inherited from DtsContainer)
ExecutionResult ExecutionResult ExecutionResult

Returns a value that indicates the success or failure of the execution of the DtsContainer object.

(Inherited from DtsContainer)
ExecutionStatus ExecutionStatus ExecutionStatus

Returns a value that indicates the current status of the execution of the DtsContainer object at the time of the call.

(Inherited from DtsContainer)
ExecutionValue ExecutionValue ExecutionValue

Gets the result of the task execution. This property is read-only.

ExecValueVariable ExecValueVariable ExecValueVariable

Gets or sets the custom Variable that contains the execution results of the task.

FailPackageOnFailure FailPackageOnFailure FailPackageOnFailure

Gets or sets a Boolean that indicates whether the package fails when a child container fails. This property is used on containers, not the package itself.

(Inherited from DtsContainer)
FailParentOnFailure FailParentOnFailure FailParentOnFailure

Gets or sets a Boolean that defines whether the parent container fails when a child container fails.

(Inherited from DtsContainer)
ForcedExecutionValue ForcedExecutionValue ForcedExecutionValue

If the ForceExecutionValue property is set to True, gets or sets a value that specifies the optional execution value that the package returns.

(Inherited from DtsContainer)
ForceExecutionResult ForceExecutionResult ForceExecutionResult

Gets or sets a DTSForcedExecResult enumeration value that specifies the forced execution result of the container.

(Inherited from DtsContainer)
ForceExecutionValue ForceExecutionValue ForceExecutionValue

Gets or sets a Boolean that indicates whether the execution value of the container should be forced to contain a particular value.

(Inherited from DtsContainer)
HasExpressions HasExpressions HasExpressions

Gets a value that indicates whether the TaskHost object has expressions.

HostType HostType HostType

Gets a value from the DTSObjectHostType enumeration that describes the host of the container. This property is read-only.

ID ID ID

Returns the ID, which is a GUID, of the DtsContainer. The value is read-only.

(Inherited from DtsContainer)
InnerObject InnerObject InnerObject

Gets the method used to access the task instance being hosted by the TaskHost.

IsDefaultLocaleID IsDefaultLocaleID IsDefaultLocaleID

A Boolean that indicates whether the container uses the default locale. This property is read-only.

(Inherited from DtsContainer)
IsolationLevel IsolationLevel IsolationLevel

Gets or sets the isolation level of the transaction in the DtsContainer object.

(Inherited from DtsContainer)
LocaleID LocaleID LocaleID

Gets or sets an Integer that indicates the Microsoft Win32® localeID to use when the DtsContainer object is executed.

(Inherited from DtsContainer)
LogEntryInfos LogEntryInfos LogEntryInfos

Returns a LogEntryInfos object. This property is read-only.

(Inherited from DtsContainer)
LoggingMode LoggingMode LoggingMode

Gets or sets a valid value from the DTSLoggingMode enumeration that indicates the logging mode of the container.

(Inherited from DtsContainer)
LoggingOptions LoggingOptions LoggingOptions

Returns an object that contains properties that indicates the filtering and logging resource for containers. This property is read-only.

(Inherited from DtsContainer)
MaximumErrorCount MaximumErrorCount MaximumErrorCount

Gets or sets an Integer value that indicates the maximum number of errors that can occur before the DtsContainer object stops running.

(Inherited from DtsContainer)
Name Name Name

Gets or sets the name of the DtsContainer.

(Inherited from DtsContainer)
Parent Parent Parent

Returns the parent container. The value is read-only.

(Inherited from DtsContainer)
Properties Properties Properties

Gets a DtsProperties collection that contains the properties associated with the task.

Site Site Site

Gets or sets the site for the container.

(Inherited from DtsContainer)
StartTime StartTime StartTime

Returns the time that the container began execution. This property is read-only.

(Inherited from DtsContainer)
StopTime StopTime StopTime

Returns the time that the container ended execution. This property is read-only.

(Inherited from DtsContainer)
SuspendRequired SuspendRequired SuspendRequired

Gets or sets a Boolean that indicates if tasks should suspend when they encounter a breakpoint. This value is set by the runtime engine for tasks and containers when a breakpoint is encountered.

(Inherited from DtsContainer)
TransactionOption TransactionOption TransactionOption

Gets or sets a DTSTransactionOption enumeration value that indicates whether the container participates in transactions.

(Inherited from DtsContainer)
VariableDispenser VariableDispenser VariableDispenser

Returns a VariableDispenser object so variables associated with the container can be locked.

(Inherited from DtsContainer)
Variables Variables Variables

Returns a collection that contains the variables associated with this container. This property is read-only.

(Inherited from DtsContainer)

Methods

AcceptBreakpointManager(BreakpointManager) AcceptBreakpointManager(BreakpointManager) AcceptBreakpointManager(BreakpointManager)

This method is called by the run-time engine when a task or container is created, and passes it a BreakpointManager manager to allow the task to create, remove, and check the status of breakpoints. This method is called by the runtime and is not used in code.

(Inherited from DtsContainer)
ComputeExpressions(Boolean) ComputeExpressions(Boolean) ComputeExpressions(Boolean)

Computes the expressions of the TaskHost object.

Dispose() Dispose() Dispose()

Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.

(Inherited from DtsContainer)
Equals(Object) Equals(Object) Equals(Object)

Determines whether two object instances are equal.

(Inherited from DtsObject)
Execute(Connections, Variables, IDTSEvents, IDTSLogging, Object) Execute(Connections, Variables, IDTSEvents, IDTSLogging, Object) Execute(Connections, Variables, IDTSEvents, IDTSLogging, Object)

Runs the application, container, or package as part of a package workflow.

(Inherited from DtsContainer)
GetExecutionPath() GetExecutionPath() GetExecutionPath()

Returns the execution path of the current TaskHost.

GetExpression(String) GetExpression(String) GetExpression(String)

Returns the expression for the specified property. Null means no expression is assigned.

GetHashCode() GetHashCode() GetHashCode()

Returns the hash code for this instance.

(Inherited from DtsObject)
GetPackagePath() GetPackagePath() GetPackagePath()

Returns the path to the task location.

LoadFromXML(XmlNode, IDTSEvents) LoadFromXML(XmlNode, IDTSEvents) LoadFromXML(XmlNode, IDTSEvents)

This method is not callable by your application code. To load a package saved as .xml, use the LoadPackage(String, IDTSEvents) method.

(Inherited from DtsContainer)
ResumeExecution() ResumeExecution() ResumeExecution()

Resumes execution of the task after pausing. The task or container is resumed by the runtime engine.

(Inherited from DtsContainer)
SaveToXML(XmlDocument, XmlNode, IDTSEvents) SaveToXML(XmlDocument, XmlNode, IDTSEvents) SaveToXML(XmlDocument, XmlNode, IDTSEvents)

This method is not callable by your application code. To save a package as .xml, use the SaveToXml(String, Package, IDTSEvents) method.

(Inherited from DtsContainer)
SetExpression(String, String) SetExpression(String, String) SetExpression(String, String)

Assigns the specified expression to the property. Specify null to remove an existing expression from the property.

SetWrappedExecutable(IDTSExecutable100) SetWrappedExecutable(IDTSExecutable100) SetWrappedExecutable(IDTSExecutable100)

Returns the wrapped executable object.

(Inherited from EventsProvider)
SuspendExecution() SuspendExecution() SuspendExecution()

Called when the executable needs to suspend. This method is called by the runtime engine.

(Inherited from DtsContainer)
Validate(Connections, Variables, IDTSEvents, IDTSLogging) Validate(Connections, Variables, IDTSEvents, IDTSLogging) Validate(Connections, Variables, IDTSEvents, IDTSLogging)

Allows the container to determine if it contains invalid settings that will prevent it from executing successfully.

(Inherited from DtsContainer)

Events

Disposed Disposed Disposed

Adds an event handler to listen to the Disposed event on the component.

(Inherited from DtsContainer)

Fields

m_executable m_executable m_executable

The executable.

(Inherited from Executable)

Applies to