尝试执行时如何知道 SSIS 运行 包问题

How to know SSIS run package issue when trying to execute

我尝试使用这段代码 运行 SSIS:

public class EjecutaPaquete {

     private Microsoft.SqlServer.Dts.Runtime.Package pkgPaquete;
     private Application appAplicacion;

     public DTSExecResult EjecucionPaquete(string str_Paquete, List < CatVariablesEtl > Vars = null) {

       DTSExecResult respuesta;
       try {
         appAplicacion = new Application();

         appAplicacion.PackagePassword = "mypass";

         pkgPaquete = appAplicacion.LoadPackage(str_Paquete, null);

         foreach(CatVariablesEtl item in Vars) {
           pkgPaquete.Variables[item.str_NombreVariable.ToString()].Value = item.str_ValorVariable.ToString();
         }

         respuesta = pkgPaquete.Execute();

         return respuesta;
       } catch (Exception ex) {

         throw new NotImplementedException();
       }

     }

它正确地将所有变量读入 foreach,问题是当尝试先执行包 respuesta = pkgPaquete.Execute(); 时它 return succeeded 但是当它 return "respuesta"它得到 failure

您可以从 package.Errors 属性 中读取错误:

代码示例:

foreach(DtsError item in package.Errors) {

     Console.Writeline(item.description);

}