Ich habe ein SSIS-Paket, das mehrere Aufgaben ausführt. Ich habe manuell einen Ereignishandler in Business Intelligence Studio 2005 auf Paketebene für das Ereignis "OnExecStatusChanged" hinzugefügt.
Meine Frage ist, wie kann ich einen Handler für dieses Ereignis in C# hinzufügen? Ich habe das Paket wie angegeben geladen aquí und ich habe auch eine benutzerdefinierte Klasse erstellt, die von Microsoft.SqlServer.Dts.Runtime.DefaultEvents geerbt wurde und mein "Listener" ist:
Microsoft.SqlServer.Dts.Runtime.SqlPackageEventListener sqlListener = new SqlPackageEventListener();
Microsoft.SqlServer.Dts.Runtime.Application sqlPackageLoader = new Application();
Microsoft.SqlServer.Dts.Runtime.Package sqlPackage = sqlPackageLoader.LoadPackage(@"path\MigrateData.dtsx", sqlListener);
sqlPackage.Execute(null, null, sqlListener, null, null);
Wenn ich die Eigenschaft sqlPackage.EventHandlers.Count überprüfe, erhalte ich die richtige Anzahl für Handler, die in Business Intelligence Studio hinzugefügt wurden.
Gibt es eine Möglichkeit, diese Ereignisse innerhalb von C# zu behandeln?
Gracias.