在驗證XML文件中的id時,它充當區分大小寫。我添加了「翻譯」以使其不區分大小寫。以下是我的代碼:XML SelectSingleNode區分大小寫
$Config = "xmlfile"
[xml]$configxml = Get-Content $config
$siteId = "Test"
$Siteid = $Siteid.ToLower()
$siteinfo = $configxml.SelectSingleNode("/configuration/environment[translate(@id='$($siteId)'])");
if(!$siteinfo)
{
Write-Host "id specified '$siteId' not found in '$config' Aborting..."
exit -1
}
else
{
Write-Host "site id is present"
}
我收到以下錯誤:
id specified 'Test' not found in 'xmlfile' Aborting...
這裏是我的xml文件:
<configuration>
<!-- TEST -->
<environment id="TEST">
<client>ABC</client>
<type>Test</type>
<filetype>ALL</filetype>
<enable>yes</enable>
</environment>
</configuration>
可有人請我提出可能的解決方案如何使它作爲區分大小寫以及如何使用「翻譯」?
感謝您的回覆。除了$ siteId,我們還想要轉換xml id。你能告訴我如何做到這一點。 – mahesh
在發佈的代碼中,問題已經有'$ Siteid = $ Siteid.ToLower()',所以這個答案是多餘的,並且不提供真正的解決方案。 – wOxxOm
@wOxxOm:糟糕。你是對的。查看代碼時我錯過了。 – breusshe