Сохранение специальных символов в xml

У меня есть строка xml, хранящаяся в таблице db со строкой кормить персонажей. В моей программе на C # 3.5 я загружаю его и управляю им с помощью Linq to xml, а затем показываю его как строку в элементе управления текстовым полем в форме пользовательского интерфейса.

Мне нужно сделать отступ в этом xml, а также сохранить перевод строки / возврат каретки, пока показывая его в пользовательском интерфейсе.

Я могу сделать отступ, но как мне сохранить символы LF / CR в xml ??

Вот пример кода C #:

    XElement rootNode = CreateRootNode();
    XElement testXmlNode = XElement.Parse(xmlFromDbWithLFChars);

    rootNode.Add(testXmlNode );

    var builder = new StringBuilder();
    var settings = new XmlWriterSettings()
    {
     Indent = true
    };

    using (var writer = XmlWriter.Create(builder, settings))
    {
     rootNode.WriteTo(writer);
    }
    xmlString  = builder.ToString();   

    xmlString = xmlString.Replace("
", Environment.NewLine); //Doesnt work

    xmlString = xmlString.Replace("
", Environment.NewLine);  //Doesnt work

//Heres how the xml should look like in the UI control:
 <TestNode
             name="xyz"
             Id="12">
             <Children>
                  <Child name="abc" location="p" />
             </Children>
    </TestNode>
6
задан user40907 12 November 2010 в 19:59
поделиться