Я потратил силы на рефакторинг пакета SSIS, который копирует кучу файлов журнала в папку в нашей сети, проверяет все файлы в папке назначения, а затем удаляет все, которые устарели после нашей политики хранения.Кажется, что все должно работать, но с ошибкой выше.
Структура: переменная dailyFilesToDelete типа Object, заполняемая задачей скрипта внутри цикла ForEach File.Я упростил свой код, добавив один файл, который я создал, чтобы протестировать этот новый пакет и попытаться найти суть проблемы.
var fileListDelete = new List<string>();
fileListDelete.Add(@"Q:\xpcttvcpc_live_Full_201912050000.bak");
Dts.Variables["dailyFilesToDelete"].Value = fileListDelete.GetEnumerator();
Dts.TaskResult = (int)ScriptResults.Success;
Следующим шагом является цикл по каждому элементу, который не работает.
Enumerator: Foreach From Variable Enumerator
Переменная Enumerator: User :: dailyFilesToDelete
Отображение переменной: User :: deleteFileName
Я подозреваю, что проблема связана скак я передаю свой список строк в dailyFilesToDelete.Сначала я передавал сам список, и как только я увидел ошибку «переменная не содержит перечислителя», я был уверен, что добавление вызова GetEnumerator исправит это.