Некорректная десериализация XML - C#

Узнай цену своей работы

Формулировка задачи:

Сериализуется класс, в котором есть поле List<Record>. Структура Record имеет вид:
Листинг программы
  1. [Serializable]
  2. public struct Record
  3. {
  4. [XmlElement]
  5. public string Title
  6. {
  7. get;
  8. set;
  9. }
  10. [XmlElement]
  11. public string SomeField
  12. {
  13. get;
  14. set;
  15. }
  16. [XmlElement]
  17. public string AnotherField
  18. {
  19. get;
  20. set;
  21. }
  22. [XmlElement]
  23. public string Comment
  24. {
  25. get;
  26. set;
  27. }
  28. }
Выполняю ее сериализацию и десереализацию в качестве XML. Вот только в некоторых случаях в полях могут содержаться подобные данные:
Листинг программы
  1. <Title>Rob&#x4;&#x1D;&#x10;qAC}&#x6;v</Title>
Сериализуются они нормально, а вот при десериализацииидет ругань на неверный формат XML. Как это можно исправить? Пробовал использовать при сериализации метод HttpUtility.UrlEncode(), чтобы избавиться от спец. символов - не помогает.

Решение задачи: «Некорректная десериализация XML»

textual
Листинг программы
  1. public static T LoadFromXml<T>(String _fileName)
  2. {
  3.     XmlSerializer serializer = new XmlSerializer(typeof(T));
  4.     TextReader textReader = new StreamReader(_fileName);
  5.     T deserializedObj = (T) serializer.Deserialize(textReader);
  6.  
  7.     textReader.Close();
  8.  
  9.     return deserializedObj;
  10. }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 4 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут