Цикл Foreach в SSIS используется для итерации по списку объектов. Итак, для приведенного выше примера у вас есть одномерный список, List<Dog>
, в качестве входа в цикл. Чтобы получить текущий элемент в списке, необходимо указать переменную, сопоставляемую с индексом 0.
Если бы у вас был двумерный список, скажем, List<Dog,Owner>
, тогда вы бы извлекли текущий объект Dog, сопоставив переменную с индексом 0, а текущего Владельца - с индексом 1.
Если у вас есть текущий объект в переменной, вы можете получить его свойства, приведя его к соответствующему типу в задаче сценария. Внутри скрипта вы можете вызвать dog.Name
и сохранить его в другой переменной для использования в других компонентах.
Это пример кода задачи скрипта (C #), который извлекает объект dog из переменной, а затем сохраняет его Name
и BestTrick
в двух разных переменных.
public void Main()
Dog d = (Dog) Dts.Variables["Dog"].Value;
Dts.Variables["DogName"].Value = d.Name;
Dts.Variables["DogTrick"].Value = d.BestTrick;
}
Обратите внимание, что каждая переменная, которую вы хотите редактировать или прочитать, должна быть известна задаче сценария в ее свойствах