gpt4 book ai didi

c# - 如何将变量从 c# 传递到 ssis 包

转载 作者:行者123 更新时间:2023-11-30 18:12:02 25 4
gpt4 key购买 nike

我正在尝试使用执行 SSIS 包的 ASP.NET 构建应用程序,因此我想将变量从应用程序传递到此包。我想知道 SSIS 中是否缺少某些配置。

var a = demande_provision_creance.Année;
var t = demande_provision_creance.Trimestre;
var e = demande_provision_creance.Etat;
var i = demande_provision_creance.ID;


db.SaveChanges();


try
{


String pkgLocation = @"C:\PROVISION_CREANCES.dtsx";

Application app = new Application();

Package ssisPackage = null;

ssisPackage = app.LoadPackage(pkgLocation, null);

Microsoft.SqlServer.Dts.Runtime.Variables vars = ssisPackage.Variables;

vars["User::Annee"].Value = a;
vars["User::trimestre"].Value = t;
vars["User::etat"].Value = e;
vars["User::id_demande"].Value = i;


Microsoft.SqlServer.Dts.Runtime.DTSExecResult results = ssisPackage.Execute(null, vars, null, null, null);


if (results == Microsoft.SqlServer.Dts.Runtime.DTSExecResult.Failure)
{
foreach (Microsoft.SqlServer.Dts.Runtime.DtsError local_DtsError in ssisPackage.Errors)
{
x += string.Concat("Package Execution results: {0}", local_DtsError.Description.ToString());
}
}

}
catch (DtsException ex)
{
// Exception = ex.Message;
}
return Json(x, JsonRequestBehavior.AllowGet);

最佳答案

你就快完成了,你不需要在变量名称旁边提供变量范围:

vars["Annee"].Value = a;
vars["trimestre"].Value = t;
vars["etat"].Value = e;
vars["id_demande"].Value = i;

提供在脚本组件或脚本任务中使用的范围,但在以编程方式处理包时不使用。

关于c# - 如何将变量从 c# 传递到 ssis 包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56145162/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com