Programmgesteuertes Auffinden von Datenflusskomponenten
Nachdem Sie einem Paket einen Datenflusstask hinzugefügt haben, besteht der nächste Schritt darin zu bestimmen, welche Datenflusskomponenten für Sie zur Verwendung zur Verfügung stehen. Sie können die Datenflussquellen, Transformationen und Ziele, die auf dem lokalen Computer installiert und verfügbar sind, programmgesteuert auffinden. Weitere Informationen zum Hinzufügen eines Datenflusstasks zu dem Paket finden Sie unter Programmgesteuertes Hinzufügen des Datenflusstasks.
Auffinden von Komponenten
Die Application-Klasse stellt die PipelineComponentInfos-Auflistung bereit, die ein PipelineComponentInfo-Objekt für die einzelnen Komponenten enthält, die korrekt auf dem lokalen Computer installiert sind. PipelineComponentInfo enthält Informationen zu einer Komponente, z. B. ihren Namen, eine Beschreibung und ihren Erstellungsnamen. Sie können den in der CreationName-Eigenschaft zurückgegebenen Wert verwenden, um die ComponentClassID-Eigenschaft von IDTSComponentMetaData100 festzulegen, wenn Sie einem Paket eine Komponente hinzufügen.
Nächster Schritt
Nach dem Auffinden verfügbarer Komponenten besteht der nächste Schritt darin, die Komponenten hinzuzufügen und zu konfigurieren. Dies wird im nächsten Thema, Programmgesteuertes Hinzufügen von Datenflusskomponenten, beschrieben.
Beispiel
Im folgenden Codebeispiel wird gezeigt, wie die PipelineComponentInfos-Auflistung des Application-Objekts aufgezählt wird, um die auf dem lokalen Computer verfügbaren Datenflusskomponenten programmgesteuert aufzufinden. Dieses Beispiel erfordert einen Verweis auf die 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
|