C# 在所有其他组件执行之前写入变量

C# 在所有其他组件执行之前写入变量,c#,ssis,C#,Ssis,嗨,我正在读一个xml文件。在这个文件中,我有许多表格。我用了3张桌子。其中一个表包含创建日期。我需要另一个表中的日期来执行一些操作。所以我使用variable存储date的值,然后在另一个表中使用该值。但该值没有写入。我知道这是后期执行,但我找到了一些代码来编写变量。如下 private void WriteVariable(String varName, Object varValue) { IDTSVariables100 vars = null;

嗨,我正在读一个xml文件。在这个文件中,我有许多表格。我用了3张桌子。其中一个表包含创建日期。我需要另一个表中的日期来执行一些操作。所以我使用variable存储date的值,然后在另一个表中使用该值。但该值没有写入。我知道这是后期执行,但我找到了一些代码来编写变量。如下

 private void WriteVariable(String varName, Object varValue)
     {
         IDTSVariables100 vars = null;
          VariableDispenser.LockForWrite(varName);
          VariableDispenser.GetVariables(out vars);
          try
           {
             vars[varName].Value = varValue;
           }
          catch (Exception ex)
         {

           }
          finally
         {
           vars.Unlock();
          }
       }

请给我一些建议

我会将所需的输出流传递到记录集目标,将行存储在变量(type=Object)中。然后在每个循环容器的下游中,您可以循环行并将日期列分配给变量。在该容器中,我将添加引用日期所需的任何组件。

您在哪里调用此方法?在Input0\u ProcessInputRow中,将其中一行的值分配给变量。您能详细说明一下吗。。?为每个循环添加将增加执行时间。我不想那样做。这个解决方案是我脑海中第一个想到的,但它至少会消耗一次循环运行。但是我正在寻找一些在变量得到值后立即更新它的东西。谢谢它会增加多少执行时间?我想这将是微不足道的。如果您对结果不满意,请尝试其他解决方案之一。