Application.SaveToSqlServer in DTS.Runtime funktioniert nicht

17/12/2009 - 16:12 von Gunter Becker | Report spam
Hallo zusammen,

ich schlage mich jetzt schon eine ganze Zeit mit dem Problem herum ein
mit der DTS.Runtime (C#) geladenes DTSX-Paket auf den gewünschten SQL
Server 2008 zu speichern. Folgende Zeile führt leider nicht zum
gewünschten Ergebnis:

app.SaveToSqlServer(package, null, "vm-csodev", "sa", "xxxxx");

In diesem Fall bekomme ich eine FileNotFoundException.

Hintergrund: Ich lade in einer ASP.NET Anwendung ein lokal (also auf
dem WebServer) liegendes DTSX Paket, passe dieses ein wenig an, führe
es anschließend aus (das funktioniert) und möchte es dann auf dem SQL
Server speichern (das klappt nicht), um einen Job mit Zeitplan
anzulegen.

Am User kann es nicht liegen, denn gebe ich bewußt ein falsches
Passwort an, dann bekomme ich auch eine entsprechende Fehlermeldung,
dass die Anmeldeinformationen falsch sind.

Ich frage mich also welches File er denn überhaupt sucht, da ja das zu
speichernde Paket bereits geladen ist und als Objekt vorliegt ????

Testweise habe ich dann mal folgendes probiert:

app.SaveToXml(@"c:\tmp\DTSDataflow.dtsx", package, null)

Aber auch da bekomme ich eine Meldung, dass "c:\tmp\DTSDataflow.dtsx"
nicht existiert. Wie auch? Das würde ich ja gerade gerne anlegen.

Kann mir da vielleicht jemand weiterhelfen? Muss ich in meinem Paket
evtl. noch irgendeine Eigenschaft setzen???

Danke, Gunter
 

Lesen sie die antworten

#1 Torsten Schuessler
18/12/2009 - 11:54 | Warnen spam
Hallo Gunter,

beim SQL 2005 gabs mal das gleiche Problem - es müsste auch noch eine
Speicherverletzung vorliegen :-)

Mit größter Wahrscheinlichkeit hàngt es mit der MSXML Registrierung zusammen.

regsvr32.exe msxml6.dll

evtl. auch noch die msxml3.dll

Ich wünsche Dir einen schönen Tag,


CU
tosc

http://www.insidesql.org
http://www.insidesql.org/blogs/tosc


"Gunter Becker" wrote:

Hallo zusammen,

ich schlage mich jetzt schon eine ganze Zeit mit dem Problem herum ein
mit der DTS.Runtime (C#) geladenes DTSX-Paket auf den gewünschten SQL
Server 2008 zu speichern. Folgende Zeile führt leider nicht zum
gewünschten Ergebnis:

app.SaveToSqlServer(package, null, "vm-csodev", "sa", "xxxxx");

In diesem Fall bekomme ich eine FileNotFoundException.

Hintergrund: Ich lade in einer ASP.NET Anwendung ein lokal (also auf
dem WebServer) liegendes DTSX Paket, passe dieses ein wenig an, führe
es anschließend aus (das funktioniert) und möchte es dann auf dem SQL
Server speichern (das klappt nicht), um einen Job mit Zeitplan
anzulegen.

Am User kann es nicht liegen, denn gebe ich bewußt ein falsches
Passwort an, dann bekomme ich auch eine entsprechende Fehlermeldung,
dass die Anmeldeinformationen falsch sind.

Ich frage mich also welches File er denn überhaupt sucht, da ja das zu
speichernde Paket bereits geladen ist und als Objekt vorliegt ????

Testweise habe ich dann mal folgendes probiert:

app.SaveToXml(@"c:\tmp\DTSDataflow.dtsx", package, null)

Aber auch da bekomme ich eine Meldung, dass "c:\tmp\DTSDataflow.dtsx"
nicht existiert. Wie auch? Das würde ich ja gerade gerne anlegen.

Kann mir da vielleicht jemand weiterhelfen? Muss ich in meinem Paket
evtl. noch irgendeine Eigenschaft setzen???

Danke, Gunter

.

Ähnliche fragen