Я создаю RSS-клиент и использую Argotic framework .Он предоставляет разные классы для разных видов каналов, таких как Atom, RSS и OPML .Эти классы не наследуются ни от какого другого класса, и они не реализуют общий интерфейс для доступа к их свойствам.
Существует тип GenericSyndicationFeed
, который реализует перегруженный метод, в который можно передать AtomFeed
или RssFeed
.Если я хочу использовать «более» строго типизированные классы, мне, по сути, понадобятся два пути кода (один для Atom и один для RSS) везде в моей программе.Очевидно, я не собираюсь этого делать.
Никакой документации от автора, кроме документации API, нет, поэтому я немного растерялся относительно того, почему она была реализована таким образом, вместо того, чтобы приниматьполное преимущество законченных классов.Меня беспокоит то, что я не могу получить авторов элемента при использовании типа GenericSyndicationItem
.
Что я могу сделать здесь?Сделать класс-обертку?Или унаследовать от классов RssFeed
и AtomFeed
и реализовать интерфейс для предоставления свойств, которые, на мой взгляд, должны быть похожи на оба?