Задача сценария SSIS не может прочитать переменную проекта

В моем project.params у меня есть такие переменные, как LampUserName типа string. Затем в моей задаче сценария я пытаюсь прочитать их так:

        foreach (var name in new string[] { "ServerName", "InitialCatalog", "UserName", "Password" }) {
            if (!Dts.Variables.Contains(string.Format("$Project::Lamp{0}", name))) {
                writer.WriteLine(name);
            }
        }
        string server_name = (string)Dts.Variables["$Project::LampServerName"].Value;
        string database = (string)Dts.Variables["$Project::LampInitialCatalog"].Value;
        string username = (string)Dts.Variables["$Project::LampUserName"].Value;
        string password = (string)Dts.Variables["$Project::LampPassword"].Value;

Каждый из них выводит на печать, что он не существует, а затем выдается исключение. Что я делаю неправильно?


person Gargoyle    schedule 19.06.2018    source источник


Ответы (1)


Ссылаетесь ли вы на параметры своего проекта из компонента сценария в задаче потока данных? Если это так, то это отличается от использования задачи сценария в потоке управления. После добавления параметра проекта в поле ReadOnlyVaraiables он становится доступным как свойство объекта Variable.

string database = Variables.DatabaseParameter.ToString();
person userfl89    schedule 26.07.2018