我有以下XElement:
<title>
<bold>Foo</bold>
<italic>Bar</italic>
</title>
当我获得Value
属性时,它会返回FooBar
而没有空格。如何解决?
答案 0 :(得分:8)
根据定义,Value
元素的<title>
是此元素中所有文本的串联。默认情况下,元素及其内容之间的空格被忽略,因此它给出了“FooBar”。您可以指定要保留空格:
var element = XElement.Parse(xml, LoadOptions.PreserveWhitespace);
但是它会保留所有空格,包括换行符和缩进。在您的XML中,有一个换行符和“Foo”和“Bar”之间的两个空格;如何猜测你只想保留一个空间?
答案 1 :(得分:0)
来自documentation for the Value
property of the XElement
class:
获取或设置此元素的连接文本内容。
鉴于您的示例,此行为是预期的。如果你想要空格,你必须提供逻辑来实现它。