Je copie des paquetages SSIS d'un serveur SQL à un autre dans un programme C# via DTUTIL. Les paquets sont en MSDB.Récupère le nom du paquet SSIS avec C#
string dtutilCmd = "/c DTUTIL /SOURCESERVER " + sourceServer + " /SQL " + myPackage + " /DestServer " + destServer + " /COPY " + myPackage;
System.Diagnostics.Process process = new System.Diagnostics.Process();
System.Diagnostics.ProcessStartInfo startInfo = new System.Diagnostics.ProcessStartInfo();
startInfo.WindowStyle = System.Diagnostics.ProcessWindowStyle.Hidden;
startInfo.FileName = "cmd.exe";
startInfo.Arguments = dtutilCmd;
process.StartInfo = startInfo;
process.Start();
Les variables de la chaîne dtutilCmd
sont toutes les chaînes. Le problème est que lorsque mes utilisateurs entrent le nom du paquet, ils peuvent se tromper. Ils peuvent écrire MYPACKAGE
afin qu'il soit déployé comme MYPACKAGE
, même s'il existe réellement sous la forme MyPackage
sur le serveur source, que je souhaite conserver.
Je veux donc récupérer le nom du paquet et l'insérer dans la dernière partie de ma chaîne dtutilCmd
.
J'ai commencé à travailler. Pour les gens de l'avenir, le code ne fonctionnera pas tout à fait, il a besoin de beaucoup de peaufinage, mais la solution est légitime. – coinbird