Сценарий Power Shell SelectSingleNode не работает - PullRequest
1 голос
/ 12 апреля 2011
   $xmlFile = "D:\ServiceConfiguration.cscfg"  
   [xml]$doc = Get-Content $xmlFile 
   $node = $doc.SelectSingleNode("/ServiceConfiguration/Role/ConfigurationSettings[@name='DiagnosticsConnectionString']") 
   $node.value = "New-Value" 
   $doc.Save($xmlFile)

SelectSingleNode всегда возвращает ноль. Пожалуйста, помогите

1 Ответ

6 голосов
/ 12 апреля 2011

Элементы соответствуют пространству имен, поэтому вам нужно указать пространство имен в запросе:

$xmlFile = "D:\ServiceConfiguration.cscfg"
[xml]$doc = Get-Content $xmlFile         
$ns = new-object Xml.XmlNamespaceManager $xml.NameTable
$ns.AddNamespace('dns', 'http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration')
$node = $doc.SelectSingleNode("/dns:ServiceConfiguration/dns:Role/dns:ConfigurationSettings[@name='DiagnosticsConnectionString']", $ns)      
$node.value = "New-Value"
$doc.Save($xmlFile)  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...