opcje, które są dostępne do uruchomienia pakietu SSIS są -
- Run pakiet SSIS programowo przy użyciu modelu obiektów. Jest to omówione szczegółowo w Books Online here.
przykład:
using System;
using Microsoft.SqlServer.Dts.Runtime;
namespace RunFromClientAppCS
{
class Program
{
static void Main(string[] args)
{
string pkgLocation;
Package pkg;
Application app;
DTSExecResult pkgResults;
pkgLocation = "<package path>\CalculatedColumns.dtsx";
app = new Application();
pkg = app.LoadPackage(pkgLocation, null);
pkgResults = pkg.Execute();
Console.WriteLine(pkgResults.ToString());
Console.ReadKey();
}
}
}
rozpoczęcia procesu DTEXEC.EXE. DTEXEC to narzędzie wiersza poleceń do wykonywania pakietów SSIS. Zobacz opcje wiersza poleceń: here.
Użyj agenta SQL. Możesz skonfigurować zadanie agenta, aby uruchomić pakiet (wykonaj to ręcznie z góry, jeśli pakiet jest statyczny, lub programowo używając SMO lub używając procedur składowanych SQL tuż przed uruchomieniem pakietu), a następnie uruchom go programowo za pomocą SMO lub sp_start_job.
Użyj innego narzędzia do uruchomienia DTEXEC dla siebie.
Utwórz niestandardową aplikację, która uruchomi pakiet (używając OM jak opisano w metodzie nr 1 lub używając DTEXEC jak w metodzie nr 2). Wyeksponuj go jako usługę internetową lub klasę DCOM, wywołaj tę usługę ze swojego programu.
Invent własne :)
referencyjny: Running SSIS Package Programmatically
Im przy użyciu rozwiązanie dla Winform. Dostaję czerwone zawijasy pod następującymi: 'Aplikacja aplikacji;', 'app = new Application();' i 'pkg = app.LoadPackage (pkgLocation, null)'; z następującymi wyjątkami: "Błąd " Aplikacja "jest niejednoznacznym odnośnikiem pomiędzy" System.Windows.Forms.Application "i" Microsoft.SqlServer.Dts.Runtime.Application "\t' i 'Błąd Typ ' System.Windows.Forms.Application "nie ma zdefiniowanych konstruktorów" - co muszę zmienić w Winformie? –