Эти атрибуты тоже давали мне покои. Я решил это с помощью класса XNamespace при создании простого подкаста. Ниже приведен пример кода из моего приложения:
XDocument xmlDocument = new XDocument(
new XDeclaration("1.0", "utf-8", "yes")
);
XNamespace itunesNamespace = "http://www.itunes.com/dtds/podcast-1.0.dtd";
XElement xmlRssElement = new XElement("rss", new XAttribute(XNamespace.Xmlns + "itunes", itunesNamespace), new XAttribute("version", "2.0"));
XElement xmlChannelElement = new XElement("channel",
new XElement("title", "title"),
new XElement(itunesNamespace + "explicit", "No"));
xmlRssElement.Add(xmlChannelElement);
xmlDocument.Add(xmlRssElement);
xmlDocument.Save(@"sample-" + DateTime.Now.Ticks + ".xml");
Обратите внимание, что некоторый код был удален для уточнения
Вы можете получить исходный документ с помощью XDocument.Parse () и динамически добавлять пространство имен, как это делается в моем коде перед сохранением документа