Share via


TaskHost.InnerObject Propiedad

Definición

Obtiene el método utilizado para obtener acceso a la instancia de la tarea hospedada por el TaskHost.

public:
 property System::Object ^ InnerObject { System::Object ^ get(); };
[System.ComponentModel.Browsable(false)]
public object InnerObject { get; }
[<System.ComponentModel.Browsable(false)>]
member this.InnerObject : obj
Public ReadOnly Property InnerObject As Object

Valor de propiedad

El objeto que la clase TaskHost contiene.

Implementaciones

Atributos

Ejemplos

En el ejemplo de código siguiente se agrega un FileSystemTask y BulkInsertTask a un paquete y se recuperan las tareas de un bucle mediante el InnerObject método de para determinar el tipo de TaskHost tarea.

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 thFileSystemTask1 = exec1 as TaskHost;  
            // Add a Bulk Insert task to the package.  
            Executable exec2 = p.Executables.Add("STOCK:BulkInsertTask");  
            TaskHost thFileSystemTask2 = 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());  

                if (taskHost.InnerObject is Microsoft.SqlServer.Dts.Tasks.FileSystemTask.FileSystemTask)  
                {  
                    // Do work here.  
                }  
                else if (taskHost.InnerObject is Microsoft.SqlServer.Dts.Tasks.BulkInsertTask.BulkInsertTask)  
                {  
                    // Do work here.  
                }  
                // Continue to add statements to check InnerObject, if desired.  
            }  
        }  
    }  
}  
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 thFileSystemTask1 As TaskHost =  exec1 as TaskHost   
            ' Add a Bulk Insert task to the package.  
            Dim exec2 As Executable =  p.Executables.Add("STOCK:BulkInsertTask")   
            Dim thFileSystemTask2 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())  

                If TypeOf taskHost.InnerObject Is Microsoft.SqlServer.Dts.Tasks.FileSystemTask.FileSystemTask Then  
                    ' Do work here.  
                Else If TypeOf taskHost.InnerObject Is Microsoft.SqlServer.Dts.Tasks.BulkInsertTask.BulkInsertTask Then   
                    ' Do work here.  
                End If  
                ' Continue to add statements to check InnerObject, if desired.  
            Next  
        End Sub  
    End Class  
End Namespace  

Salida del ejemplo:

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

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

Comentarios

Puede recuperar la instancia de tarea específica mediante la InnerObject conversión de como TaskHost el tipo de tarea. A continuación, use el objeto de la tarea para acceder directamente a sus métodos y propiedades.

Se aplica a