Programistyczne tworzenie pakietu
Package Obiekt jest kontener najwyższego poziom dla wszystkich obiektów w SSIS roztwór projektu.Jako kontener najwyższego poziom pakiet jest pierwszy obiekt utworzony i kolejne obiekty są dodawane do niego i następnie uruchomiony w kontekście pakietu.pakiet Sobie nie przenieść lub przekształcania danych.Pakiet zależy od zadania zawiera wykonywanie pracy.Zadania wykonuje większość pracy wykonanej przez pakiet i zdefiniować funkcje pakietu.Pakiet jest tworzony i wykonywany tylko trzy wiersze kodu, ale różnych zadań i ConnectionManager dodawane są obiekty, aby podać dodatkowe funkcje do pakietu.W tej sekcji omówiono sposób programowo utworzyć pakiet.Dostarcza informacji o tworzeniu zadania lub ConnectionManager.Są one objęte w kolejnych rozdziałach.
Przykład
Aby napisać kod przy użyciu programu Visual Studio IDE, odniesienie do Microsoft.SqlServer.ManagedDTS.DLL jest wymagane do utworzenia using instrukcja (Imports w języku Visual Basic.NET) do Microsoft.SqlServer.Dts.Runtime.Poniższy przykładowy kod ilustruje tworzenie pustego pakiet.
using System;
using Microsoft.SqlServer.Dts.Runtime;
namespace Microsoft.SqlServer.Dts.Samples
{
class Program
{
static void Main(string[] args)
{
Package package;
package = new Package();
}
}
}
Imports Microsoft.SqlServer.Dts.Runtime
Module Module1
Sub Main()
Dim package As Package
package = New Package
End Sub
End Module
Aby skompilować i uruchomić próbki, naciśnij klawisz F5 w programie Visual Studio.Aby skompilować kod przy użyciu języka C# kompilatora, csc.exe, w wiersz polecenia, aby skompilować, użyj następującego polecenia i pliku odwołania, zastępując <filename> z nazwą pliku CS lub .vb i nadanie mu <outputfilename> Wybór.
CSC /miejsce docelowe:library/out: <outputfilename>dll <nazwę pliku>/r:Microsoft.SqlServer.Managed CS DTS.dll " /r:system.dll
Aby skompilować kod przy użyciu języka Visual Basic.Kompilator NET vbc.exe, w wiersz polecenia, aby skompilować, użyj następującego polecenia i odwołania do pliku.
CSC / /miejsce docelowe:library/out: <outputfilename>dll <nazwę pliku>.vb /r:Microsoft.SqlServer.Managed DTS.dll " /r:system.dll
Można również utworzyć pakiet, ładując istniejący pakiet, który został zapisany na dysku w systemie plików lub do SQL Server.Różnica jest Application najpierw tworzony jest obiekt, a następnie obiekt pakiet jest wypełniany przez jedną z aplikacji przeciążonej metody: LoadPackagedla plików płaskich LoadFromSQLServer dla pakietów zapisane SQL Server, lub LoadFromDtsServer dla pakietów zapisane w systemie plików.Poniższy przykład ładuje istniejący pakiet z dysku, a następnie wyświetla kilka właściwości pakietu.
using System;
using Microsoft.SqlServer.Dts.Runtime;
namespace Microsoft.SqlServer.Dts.Samples
{
class ApplicationTests
{
static void Main(string[] args)
{
// The variable pkg points to the location of the
// ExecuteProcess package sample that was installed with
// the SSIS samples.
string pkg = @"C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services" +
@"\Package Samples\ExecuteProcess Sample\ExecuteProcess\UsingExecuteProcess.dtsx";
Application app = new Application();
Package p = app.LoadPackage(pkg, null);
// Now that the package is loaded, we can query on
// its properties.
int n = p.Configurations.Count;
DtsProperty p2 = p.Properties["VersionGUID"];
DTSProtectionLevel pl = p.ProtectionLevel;
Console.WriteLine("Number of configurations = " + n.ToString());
Console.WriteLine("VersionGUID = " + (string)p2.GetValue(p));
Console.WriteLine("ProtectionLevel = " + pl.ToString());
Console.Read();
}
}
}
Imports Microsoft.SqlServer.Dts.Runtime
Module ApplicationTests
Sub Main()
' The variable pkg points to the location of the
' ExecuteProcess package sample that was installed with
' the SSIS samples.
Dim pkg As String = _
"C:\Program Files\Microsoft SQL Server\100\Samples\Integration Services" & _
"\Package Samples\ExecuteProcess Sample\ExecuteProcess\UsingExecuteProcess.dtsx"
Dim app As Application = New Application()
Dim p As Package = app.LoadPackage(pkg, Nothing)
' Now that the package is loaded, we can query on
' its properties.
Dim n As Integer = p.Configurations.Count
Dim p2 As DtsProperty = p.Properties("VersionGUID")
Dim pl As DTSProtectionLevel = p.ProtectionLevel
Console.WriteLine("Number of configurations = " & n.ToString())
Console.WriteLine("VersionGUID = " & CType(p2.GetValue(p), String))
Console.WriteLine("ProtectionLevel = " & pl.ToString())
Console.Read()
End Sub
End Module
Przykładowe dane wyjściowe:
Number of configurations = 2
VersionGUID = {09016682-89B8-4406-AAC9-AF1E527FF50F}
ProtectionLevel = DontSaveSensitive
|