TaskHost.InnerObject Eigenschaft

Definition

Erhält die Methode, die verwendet wird, um auf die von der gehostete TaskHostTask-Instanz zuzugreifen.

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

Eigenschaftswert

Das Objekt, das von der enthalten ist TaskHost.

Implementiert

Attribute

Beispiele

Das folgende Codebeispiel fügt einem Paket ein FileSystemTask und BulkInsertTask hinzu und ruft die Aufgaben in einer Schleife mit der InnerObject Methode der TaskHost zur Bestimmung des Aufgabentyps ab.

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  

Beispielausgabe:

Gib Microsoft ein. SqlServer.Dts.Tasks.FileSystemTask.FileSystemTask

Gib Microsoft ein. SqlServer.Dts.Tasks.BulkInsertTask.BulkInsertTask

Hinweise

Du kannst die spezifische Task-Instanz abrufen, indem du die InnerObject von als TaskHost Task-Typ castest. Dann nutzt du das Objekt der Aufgabe, um direkt auf deren Methoden und Eigenschaften zuzugreifen.

Gilt für: