Я добавляю несколько пользовательских тегов подкастов iTunes в канал RSS.
feed.AttributeExtensions.Add(new XmlQualifiedName(itunesPrefix,
"http://www.w3.org/2000/xmlns/"), itunesNs);
var extensions = feed.ElementExtensions;
extensions.Add(new SyndicationElementExtension("category", itunesNs, "Business"));
var categoryElem = XName.Get("category", itunesNs);
extensions.Add(
new XElement(categoryElem,
new XAttribute("text", "Sports & Recreation"),
new XElement(categoryElem,
new XAttribute("text", "Amateur")
)
).CreateReader()
);
Вывод:
<itunes:category>Business</itunes:category>
<category text="Sports &amp; Recreation" xmlns="http://www.itunes.com/dtds/podcast-1.0.dtd">
<category text="Amateur">
</category>
</category>
Почему SyndicationElementExtension
правильно добавляет пространство именпрефикс "itunes", но передача экземпляра XmlReader - нет?
Вывод, который я ожидал:
<itunes:category text="Sports &amp; Recreation">
<itunes:category text="Amateur">
</itunes:category>
</itunes:category>