Я пытаюсь добавить XElement со специальными символами (:) код позади
Попробуйте использовать XmlDocument
, что позволит создать XmlElement
с указанным именем и пространством имен .
string xmlpath = @"~/myxml.xml";
string path = Server.MapPath(xmlpath);
XmlDocument doc = new XmlDocument();
doc.Load(path);
var mainRoot = doc.DocumentElement; //urlset element
var urlRoot = doc.CreateElement("url"); //create url element
urlRoot.AppendChild(doc.CreateElement("Video:title","title")); //add element to the url element
mainRoot.AppendChild(urlRoot); // add this new element to the main root of urlset
Пример вывода:
<?xml version="1.0" encoding="utf-8"?>
<urlset>
<url>
<Video:title xmlns:Video="title" />
</url>
</urlset>
Или, если вам нужен узел Video
с пространством имен title
...
urlRoot.AppendChild(doc.CreateElement("Video","title"));
Вывод этого выше:
<?xml version="1.0" encoding="utf-8"?>
<urlset>
<url>
<Video xmlns="title"/>
</url>
</urlset>
Пожалуйста, дайте мне знать, если это не ваш ожидаемый результат.