от
Как реализовать вывод существующего значения из файла XML и измененного значения? Я использую этот код для изменения конфигурации в файлах XML:
[xml]$config = gc $DirectoryPath\Web.config
$config.configuration.appSettings.Item(0).value = "new

Мне нужно получить вывод как значения (существующего и измененного).
Если я использую скобки:

(Write

Я получаю необходимый результат:


значение1 = новое значение1


но изменения в файле XML не применяются.

И также будет здорово, если я получу существующий номер строки из файла XML в выводе, что-то вроде:


значение1 = новое-значение1 в строке №10

    

        

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.
Анти-спам проверка:
Чтобы избежать проверки в будущем, пожалуйста войдите или зарегистрируйтесь.

1 Ответ

0 голосов
от
Вы не можете вывести элемент XML и одновременно назначить ему новое значение. Используйте два утверждения:
Write

Добавьте еще один оператор Write после присвоения нового значения, если вы хотите вывести оба значения.

Вы можете немного сократить операторы, предварительно назначив родительский объект переменной:

$appSettings = $config.configuration.appSettings
Write

Если вы пытаетесь получить старое и новое значение в одной строке вывода, вы можете сделать что-то вроде этого:

$appSettings = $config.configuration.appSettings
Write

Или перед тем, как изменить его, присвойте значение другой переменной, а затем выведите оба значения:

$appSettings = $config.configuration.appSettings
$oldvalue = $appSettings.Item(0).value
$appSettings.Item(0).value = "new

Что касается получения номеров строк, XML не является форматом, ориентированным на строки, поэтому он не будет работать.
    
...