Member 13366692 Ответов: 1

Как вставить новый элемент в канал в XML-файле


Я хочу вставить новый элемент внутри тега <channel> с помощью vb-кода
мой xml-файл выглядит следующим образом :

<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:media="http://search.yahoo.com/mrss/">
<channel>

</channel>
</rss>


это мой код. :
Dim root = New XElement("item")
    Dim title = New XElement("title", New XCData(TextBox3.Text))
    Dim link = New XElement("link", TextBox6.Text)
    Dim pubDate = New XElement("pubDate", DateTime.Now.ToString("yyy/MM/dd HH:mm"))
    Dim description = New XElement("description", New XCData(TextBox5.Text))
    Dim thumbnail = New XElement("media.thumbnail",
                                  New XAttribute("url", "http://karary-001-site1.htempurl.com/files/" + attac1 + "?itok=YdFLolAU"),
                                  New XAttribute("height", 266),
                                  New XAttribute("width", 127))
    root.Add(title, link, pubDate, description, thumbnail)
    document.Root.Add(root)
    document.Save(FilePath)

мой код добавляет новые элементы после окончания канала и rss-тега !!

Что я уже пробовал:

добавьте мой элемент к первому элементу корневого элемента с помощью :
документ.корень.Элементы.Первый().Добавить(корень)

ICEFLOWER2

Может быть: документ.Функцию documentelement.Пункт("канал").AppendChild(корень)

Member 13366692

ошибка DocumentElement не является членом 'System.Xml.Linq.XDocument'

1 Ответов

Рейтинг:
2

Richard Deeming

document.Root это <rss> элемент; вам нужно добавить свой новый элемент в <channel> элемент внутри корневой элемент.

Заменять:

document.Root.Add(root)
С:
document.Root.Element("channel").Add(root)