我有一个SSIS包,其中定义了一些变量(例如,TempTableName)。我在我的C#代码(Windows服务)中创建临时表,并将该临时表的名称分配给包变量。在调用SSIS包时,包失败并显示错误消息,指出临时表名称无效,实际上它是空白的。我不明白为什么变量没有从C#设置?
我的C#代码
oPkg = oApp.LoadPackage(mySSISPackagePath, null);
Variables vars= null;
if (oPkg.Variables.Contains("User::TempTableName"))
{
oPkg.VariableDispenser.LockOneForWrite("User::TempTableName", ref vars);
vars["User::TempTableName"].Value = "MyTempTableName";
}