xml命名空间出现xml

时间:2014-09-09 17:46:26

标签: c# xml linq-to-xml

我正在制作一个提取YouTube数据的应用程序,但我遇到了一些问题。

我有这段代码:

        XDocument docAuthor = XDocument.Parse(XDocument.Load("https://gdata.youtube.com/feeds/api/users/crashcourse/uploads?v=2&alt=atom&max-results=0").ToString());
        XNamespace ns = "http://www.w3.org/2005/Atom";

        XElement entryAuthor = docAuthor.Root.Element(ns + "author");
        txbxConsole.Text = entryAuthor.Element(ns + "name").ToString();

这是输出:<name xmlns=\"http://www.w3.org/2005/Atom\">crashcourse</name>

但我希望它是:crashcourse

2 个答案:

答案 0 :(得分:2)

只需将元素转换为string

即可
txbxConsole.Text = (string)entryAuthor.Element(ns + "name");

或者您也可以使用.Value属性。 XElement.ToString返回整个元素,而不仅仅是值。

答案 1 :(得分:2)

作为Selman答案的替代方案,您只需检索节点的值:

txbxConsole.Text = entryAuthor.Element(ns + "name").Value;