Gegevensstroomonderdelen programmatisch detecteren

Van toepassing op:SQL Server SSIS Integration Runtime in Azure Data Factory

Nadat je een dataflow-taak aan een pakket hebt toegevoegd, kan je volgende stap zijn om te bepalen welke dataflowcomponenten beschikbaar zijn voor jouw gebruik. Je kunt programmatisch de datastrombronnen, transformaties en bestemmingen ontdekken die geïnstalleerd en beschikbaar zijn op de lokale computer. Voor informatie over het toevoegen van een data flow-taak aan het pakket, zie Programmatisch de Gegevensstroom-taak toevoegen.

Componenten ontdekken

De Application klasse levert de PipelineComponentInfos collectie, die voor elke component een PipelineComponentInfo object bevat dat correct op de lokale computer is geïnstalleerd. Elke component PipelineComponentInfo bevat informatie over een component, zoals de naam, beschrijving en creatienaam. Je kunt de waarde die in de CreationName eigenschap wordt geretourneerd gebruiken om de ComponentClassID eigenschap van de IDTSComponentMetaData100 te bepalen wanneer je een component aan een pakket toevoegt.

Sample

Het volgende codevoorbeeld laat zien hoe je de PipelineComponentInfos verzameling van het Application object kunt enumereren om programmatisch de beschikbare datastroomcomponenten op de lokale computer te ontdekken. Dit voorbeeld vereist een verwijzing naar de Microsoft. SqlServer.ManagedDTS assembly.

using System;  
using Microsoft.SqlServer.Dts.Runtime;  
  
namespace Microsoft.SqlServer.Dts.Samples  
{  
  class Program  
  {  
    static void Main(string[] args)  
    {  
      Application application = new Application();  
      PipelineComponentInfos componentInfos = application.PipelineComponentInfos;  
  
      foreach (PipelineComponentInfo componentInfo in componentInfos)  
      {  
        Console.WriteLine("Name: " + componentInfo.Name + "\n" +  
          " CreationName: " + componentInfo.CreationName + "\n");  
      }  
      Console.Read();  
    }  
  }  
}  
Imports Microsoft.SqlServer.Dts.Runtime  
  
Module Module1  
  
  Sub Main()  
  
    Dim application As Application = New Application()  
  
    Dim componentInfos As PipelineComponentInfos = application.PipelineComponentInfos  
  
    For Each componentInfo As PipelineComponentInfo In componentInfos  
      Console.WriteLine("Name: " & componentInfo.Name & vbCrLf & _  
        " CreationName: " & componentInfo.CreationName & vbCrLf)  
    Next  
  
    Console.Read()  
  
  End Sub  
  
End Module