Обрабатывает ли .net XmlSerializer символы, запрещенные в xml? - PullRequest
0 голосов
/ 01 февраля 2011

.NET XmlSerializer обрабатывает запрещенные символы в XML, такие как < или >, когда я сериализую объект или мне нужно обрабатывать его самостоятельно?

спасибо.

1 Ответ

4 голосов
/ 01 февраля 2011

XmlSerializer автоматически XML-кодирует эти символы. Пример:

public class Item
{
    public string Description { get; set; }
}

class Program
{
    static void Main()
    {
        var item = new Item
        {
            Description = "<some description>"
        };
        var serializer = new XmlSerializer(item.GetType());
        serializer.Serialize(Console.Out, item);
    }
}

производит:

<?xml version="1.0" encoding="ibm850"?>
<Item xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Description>&lt;some description&gt;</Description>
</Item>
...