如何在xml中编码&,以便通过.net正确解析?

如何在xml中编码&,以便通过.net正确解析?

问题描述:

以下最小测试用例引发错误的powershell中:如何在xml中编码&,以便通过.net正确解析?

[reflection.assembly]::LoadWithPartialName('system.xml.linq') 
[system.xml.linq.xdocument]::parse('<node>&</node>') 

坦率地说,在任何NET库。当存储网址时这是一个真正的问题 - 例如,如果<node>的内容是http://test.com/?one=a&two=b

它应该如何正确编码?

+1

它在XML语法定义为“&”,并已无关。净。 – bmm6o

的XML编码符号是&amp;

与编码符号运行它不会抛出异常:

[reflection.assembly]::LoadWithPartialName('system.xml.linq') 
[system.xml.linq.xdocument]::parse('<node>&amp;</node>')