У меня есть XmlDocument
, например:
<Root>
<Settings>
<PresentationSettings>
</PresentationSettings>
</Settings>
</Root>
Когда я задаю InnerXml
из <PresentationSettings>
с этим текстом ...
<Desktop>
<WidgetElements>
<WidgetElement Name="1">
</WidgetElement>
<WidgetElement Name="2">
</WidgetElement>
</WidgetElements>
</Desktop>
...выходной файл сохраняется следующим образом:
<Root>
<Settings>
<PresentationSettings>
<Desktop>
<WidgetElements>
<WidgetElement Name="1">
</WidgetElement>
<WidgetElement Name="2">
</WidgetElement>
</WidgetElements>
</Desktop>
</PresentationSettings>
</Settings>
</Root>
Кажется, что корень InnerXml
(т.е. <Desktop>
) начинается с правого отступа столбца, но остальная часть InnerXml
сохраняетэто оригинальный отступ.Я перепробовал много методов, но все они дают одинаковый результат.Я попробовал следующие методы:
XmlTextWriter
с Formatting = Formatting.Indented
. XmlWriter
с XmlWriterSettings { Indent = true }
. - Преобразование в
XDocument
с обоимиописанные выше методы. - Использование
XmlDocumentFragment
.
Кто-нибудь может указать мне направление записи?Что я делаю не так?