Ответ 1
Чтобы указать пользовательское имя для расширений атома, вам необходимо отключить SerializeExtensionsAsAtom в формате фида:
var formatter = feed.GetRss20Formatter();
formatter.SerializeExtensionsAsAtom = false;
Затем вам нужно добавить пространство имен
XNamespace atom = "http://www.w3.org/2005/Atom";
feed.AttributeExtensions.Add(new XmlQualifiedName("atom", XNamespace.Xmlns.NamespaceName), atom.NamespaceName);
И теперь вы можете начать использовать расширения
feed.ElementExtensions.Add(new XElement(atom + "link", new XAttribute("href", feedLink), new XAttribute("rel", "self"), new XAttribute("type", "application/rss+xml")));
Наконец, напишите канал в поток ответов:
formatter.WriteTo(new XmlTextWriter(Response.Output));