Отступ текста в XML сериализации свойства строки?

У меня есть строковое свойство, которое будет содержать текст с символами новой строки. Этот текст имеет некоторые свойства текста HTML в этом пробеле не учитывается.

Если я сериализую этот тип с использованием XML-сериализации, новые строки сериализуются должным образом, но отступ "неправильно", Я хочу, чтобы в процессе сериализации отступали строки, чтобы сохранить форматирование XML, поскольку эти пробельные символы в дальнейшем все равно будут игнорироваться.

Вот'примерLINQPad программа:

void Main()
{
    var d = new Dummy();
    d.Text = @"Line 1
Line 2
Line 3";

    var serializer = new XmlSerializer(typeof(Dummy));
    var ns = new XmlSerializerNamespaces();
    ns.Add("", "");

    using (var writer = new StringWriter())
    {
        serializer.Serialize(writer, d, ns);
        writer.ToString().Dump();
    }
}

[XmlType("dummy")]
public class Dummy
{
    [XmlElement("text")]
    public string Text
    {
        get;
        set;
    }
}

Фактический вывод:



  Line 1
Line 2
Line 3

Желаемый вывод:



  
    Line 1
    Line 2
    Line 3
  

Это возможно? Если так, то как? Я'Я бы предпочел не делать хакерский способ, просто добавляя пробел в себя.

Причина в том, что этот XML будет просматриваться и редактироваться людьми, поэтому яМне бы хотелось, чтобы исходный вывод был лучше отформатирован для них из коробки.

Ответы на вопрос(1)

Ваш ответ на вопрос