Не работает Десериализация XML c#

292
18 ноября 2017, 09:31

Пытаюсь десериализовать XML:

    void C()
    {
      var request = (HttpWebRequest)WebRequest.Create("https://fakerestapi.azurewebsites.net/api/Activities");
      request.Headers.Clear();
      request.ContentType = "application/xml";
      var document = new XmlDocument();
      var result = new List<Activity>();
      using (Stream stream = request.GetResponse().GetResponseStream())
      {
         result = (List<Activity>)new XmlSerializer(typeof(List<Activity>)).Deserialize(reader);
      }
  }

Вот сам класс

public class Activity
    {
        [XmlElement("Completed")]
        public bool Completed { get; set; }
        [XmlElement("DueDate")]
        public DateTime DueDate { get; set; }
        [XmlElement("ID")]
        public int Id { get; set; }
        [XmlElement("Title")]
        public string Title { get; set; }
    }

Вот тут можно ознакомится с XML

Вылетает ошибка:

В документе xml (1, 2) присутствует ошибка

Answer 1

Вы не описали пространство имён.

Попробуйте так:

var root = new XmlRootAttribute("ArrayOfActivity")
{
    Namespace = "http://schemas.datacontract.org/2004/07/FakeRestAPI.Web.Models"
};
var seri = new XmlSerializer(typeof(List<Activity>), root);
result = (List<Activity>)seri.Deserialize(s);

XmlSerializer лучше закешировать, а не создавать много раз).

READ ALSO
Как обозначить в keypress клавишу backspace [требует правки]

Как обозначить в keypress клавишу backspace [требует правки]

Как разрешить нажатие клавиши backspace и delete в Keypress

238
Unity: Проблема с передачей данных из одного скрипта в другой

Unity: Проблема с передачей данных из одного скрипта в другой

У меня есть gameobject GJ-1 (родитель) в котором есть куча однотипных объектов, в этом GJ-1 есть скрипт "Script A", в нем хранится переменная со ссылкой на другой...

256
Сайт разлогинивается автоматом и Job

Сайт разлогинивается автоматом и Job

Добрый день! Есть сайт ASPnet mvc

282
Tasksheduling в С#

Tasksheduling в С#

Заранее извиняюсь за столь длинный вопросРазбираюсь c Task и TaskScheduler

259