1
在web.config文件中,如果它們不存在,我必須啓用httpGetEnabled
和httpsGetEnabled
屬性。如何添加屬性,如果它不存在使用PowerShell?
$Path = "c:\web.config"
$XPath = "/configuration/system.serviceModel/behaviors/serviceBehaviors/behavior"
if (Select-XML -Path $Path -Xpath $XPath) {
"Path available"
$attributePath = $Xpath +="/serviceMetadata"
"Attribute path is $attributePath"
If (Get-XMLAttribute -Path $Path -Xpath $attributePath -attribute "httpGetEnabled") {
"httpGetEnabled is present"
}
ElseIf (Get-XMLAttribute -Path $Path -Xpath $attributePath -attribute "httpsGetEnabled") {
"httpsGetEnabled is present"
}
Else {
"Add both httpGetEnabled and httpsGetEnabled attribute with the value true and false accordingly"
$attributeset = @" httpGetEnabled="false" "@
New-Attribute -path $path -xpath $XPath -attributeset $attributeset
}
我能夠設置和獲取屬性使用PowerShell值,但我不知道使用PowerShell如何添加一個新的屬性。使用Get-help
添加屬性沒有幫助。如何使用PowerShell添加新屬性?
任何想法,爲什麼節點必須有屬性附加,也可以設置? – StingyJack
編輯澄清。 'SetAttribute'只是設置屬性的值。現在更清楚的是,在Append之前使用了'$ attrib.Value = $ Value'。 – makhdumi
謝謝,我不確定這是否是Powerhell的怪癖。 – StingyJack