Я использую переменную окружения в своей программе, и я устанавливаю значение переменной вне Visual Studio. Когда я пытаюсь выполнить приведенную ниже строку кода, он возвращает значение переменной, только если значение было установлено до открытия текущего экземпляра VS. Любые изменения, сделанные позже, не будут иметь никакого эффекта.Visual Studio не может распознать изменение переменной окружения
var variableValue = Environment.GetEnvironmentVariable("Env_Var");
Чтобы получить новый набор значений, единственный выход - перезапустить VS. Похоже, что VS кэширует эти значения при запуске и, следовательно, не рассматривает никаких новых изменений. Однако, мой вопрос заключается в том, есть ли способ обновить текущий сеанс VS, чтобы я мог прочитать измененное значение переменной среды &, поэтому не нужно снова его перезапускать?
Нет, нет. Каждое приложение запускается со своей собственной копии среды при запуске, и когда тогда запускается другой процесс, он получает только то, что имеет родитель. – crashmstr
На пути обойти это можно было бы использовать файл конфигурации, запись в реестре или какой-либо другой источник, не относящийся к среде, который будет эффективен немедленно. – crashmstr