Десериализация XML CDATA в строковую переменную с RestSharp
-
14-11-2019 - |
Вопрос
Я пытаюсь взять RSS-канал и десериализовать его в список объектов RSSentry.
var Client = new RestClient("url here");
Request = new RestRequest { RequestFormat DataFormat.Xml };
var response = Client.Execute<Channel>(Request);
return response.Data.Item;
.
Это заполняет все, кроме контента, которое содержит CDATA
channel.cs
public class Channel
{
public string Title { get; set; }
public string Link { get; set; }
public string AtomLink { get; set; }
public string Description { get; set; }
public DateTime LastBuildDate { get; set; }
public string Generator { get; set; }
public string Language { get; set; }
public string UpdatePeriod { get; set; }
public int UpdateFrequency { get; set; }
public RssItems Item { get; set; }
}
.
item.cs
public class Item
{
public string Title { get; set; }
public string Link { get; set; }
public string Comments { get; set; }
public DateTime PubDate { get; set; }
public string Creator { get; set; }
public string Category { get; set; }
public string Description { get; set; }
public string Content { get; set; }
public string Guid { get; set; }
public string CommentRss { get; set; }
public int SlashComments { get; set; }
}
.
Я открыт для использования чего-то другого, чем Restsharp, но я пробую это, чтобы это надеется, что это будет хорошее простое решение.
В настоящее время любое поле с Cdata возвращается как NULL.
Решение
Проблема заключалась в том, что я прочитал XML в RSS-канале, и я назвал переменные в элементах класса.Фактический элемент элемента в RSS Feed был доволен: кодирован.
Изменение этой переменной для закодирования исправлена, полностью моя ошибка.
public class Item
{
public string Title { get; set; }
public string Link { get; set; }
public string Comments { get; set; }
public DateTime PubDate { get; set; }
public string Creator { get; set; }
public string Category { get; set; }
public string Description { get; set; }
public string Encoded { get; set; }
public string Guid { get; set; }
public string CommentRss { get; set; }
public int SlashComments { get; set; }
}
. Не связан с StackOverflow