gpt4 book ai didi

c# - 对最后一个 child 的 XMLDocument 访问

转载 作者:太空宇宙 更新时间:2023-11-03 13:39:05 25 4
gpt4 key购买 nike

我在开发站点地图项目时遇到了问题;

这是我的xml文件

<?xml version="1.0" encoding="UTF-8"?>
<urlset>
<url ID="1">
<loc>http://www.serkancamur.com/Site/Index/sayfa/Hakkimda</loc>
<changefreq>Daily</changefreq>
<priority>0,9</priority>
</url>
</urlset>

这是我的 C# 代码:

int ID = Convert.ToInt32(doc.SelectSingleNode("urlset").LastChild.Attributes["ID"].Value);

这可行,但要查看 urlset 元素属性:

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" schemaLocation="http://www.serkancamur.com/sitemap.xsd">
<url ID="1">
<loc>http://www.serkancamur.com/Site/Index/sayfa/Hakkimda</loc>
<changefreq>Daily</changefreq>
<priority>0,9</priority>
</url>
</urlset>

我只向 urlset 元素添加了属性,为什么这不起作用?

最佳答案

你需要使用XmlNamespaceManager

试试这个

    int id = 0;
XmlNamespaceManager nsmgr = new XmlNamespaceManager(doc.NameTable);
nsmgr.AddNamespace("x", "http://www.sitemaps.org/schemas/sitemap/0.9");
var urlset = doc.SelectSingleNode("//x:urlset", nsmgr);
id = Convert.ToInt32(urlset.LastChild.Attributes["ID"].Value);

希望对你有帮助

关于c# - 对最后一个 child 的 XMLDocument 访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17770647/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com