問題
我們想要分配其內容已經包含了像"
或&
實體的屬性。
在這個例子中,我們想要的標題屬性是Stack "Stacky" Overflow
:包含在一個XML的符號屬性
$elem = $xml.CreateElement("Site");
$elem.SetAttribute("Title", "Stack "Stacky" Overflow");
但是,這變成了下面這段XML輸出:
<Site Title="Stack &quot;Stacky&quot; Overflow" />
這種行爲甚至在有關XmlElement.SetAttribute Method的文檔中說明:
爲了分配包含實體引用的屬性值, 用戶必須創建一個XmlAttribute節點加上任何XmlText和 XmlEntityReference節點,建立適當的子樹,並使用 SetAttributeNode將其指定爲一個屬性的值。
代替InnerXml,可以使用ATTR值: $ elemAttr.value =「Stack " Stacky "溢出」; – Atara