在Integration Services中设置包用户变量值并运行包C#LoadFromSqlServer
我有导入到Integration Services的包。我已将它们全部设置好,并已将它们映射为运行。我的问题是,我试图以编程方式将值传递给包中的用户变量 我必须填写一个在Integration Services中设置包用户变量值并运行包C#LoadFromSqlServer,c#,ssis,package,ssms,C#,Ssis,Package,Ssms,我有导入到Integration Services的包。我已将它们全部设置好,并已将它们映射为运行。我的问题是,我试图以编程方式将值传递给包中的用户变量 我必须填写一个开始日期和一个结束日期,但我无法找到任何关于我正在做的事情的信息。有人能帮忙吗 我刚开始使用LoadFromSqlServer,不确定是否还有其他信息需要帮助,但如果您询问,我将非常乐意编辑我的问题并添加所需内容 任何帮助都将不胜感激。谢谢 ---编辑--- 下面是我使用这段代码时遇到的错误: Application app =
开始日期
和一个结束日期
,但我无法找到任何关于我正在做的事情的信息。有人能帮忙吗
我刚开始使用LoadFromSqlServer
,不确定是否还有其他信息需要帮助,但如果您询问,我将非常乐意编辑我的问题并添加所需内容
任何帮助都将不胜感激。谢谢
---编辑---
下面是我使用这段代码时遇到的错误:
Application app = new Application();
Package package = new Package();
Variables variables = package.Variables;
package = app.LoadFromSqlServer("\\File\\Path\\" + paramName, ".", "UserName"
, "Password", null);
variables["User::START_DATETIME"].Value = startDate;
variables["User::END_DATETIME"].Value = endDate;
DTSExecResult result = package.Execute();
以下是错误:
Additional information: The variable cannot be found. This occurs when an attempt
is made to retrieve a variable from the Variables collection on a container during
execution of the package, and the variable is not there. The variable name may have
changed or the variable is not being created.
您可以通过以下方式将变量传递到SSIS包中:
Package package = null;
//Load the SSIS Package which will be executed
package.Variables["User::StartDate"].Value = '2014-01-01';
package.Variables["User::EndDate"].Value = '2014-01-10';
编辑
1.检查是否没有输入错误:
if (package .Variables.Contains["StartDate"])
{
...
}
事实上,我能够找到问题的症结所在。这是相当愚蠢的,但仍然是一个解决办法 在我使用的代码中
Variables variables = package.Variables;
在我实际将包附加到包
变量之前
在包被附加到我的变量后,切换代码以调用变量起作用。新代码如下所示:
Application app = new Application();
Package package = new Package();
package = app.LoadFromSqlServer("\\File\\Path\\" + paramName, ".", "UserName"
, "Password", null);
Variables variables = package.Variables;
variables["START_DATETIME"].Value = startDate;
variables["END_DATETIME"].Value = endDate;
DTSExecResult result = package.Execute();
谢谢你的回复。不幸的是,这正是我目前试图使用的,我得到一个错误,说它无法在变量列表中找到变量名。你知道为什么会这样吗?我在我的问题中添加了上面的全部错误。