【问题标题】:How to write sitemap file with XmlWriter?如何使用 XmlWriter 编写站点地图文件?
【发布时间】:2019-04-03 21:43:04
【问题描述】:

我正在尝试自动生成站点地图。

我正在尝试生成这个 xml 输出

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"> 
  <url>
    <loc>http://www.example.com/foo.html</loc>
    <lastmod>2018-06-04</lastmod>
  </url>
</urlset>

我有

using (XmlWriter writer = XmlWriter.Create(@"books.xml"))
{
    writer.WriteStartElement("urlset");
    writer.WriteAttributeString("xmlns", "http://www.sitemaps.org/schemas/sitemap/0.9");
    writer.WriteEndElement();
    writer.Flush();
}

它渲染这个&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;urlset

xmlns 似乎有问题,如果我删除它,它可以工作。

【问题讨论】:

    标签: c# xml sitemap xmlwriter


    【解决方案1】:

    使用 https://docs.microsoft.com/en-us/dotnet/api/system.xml.xmlwriter.writestartelement?view=netframework-4.7.2#System_Xml_XmlWriter_WriteStartElement_System_String_System_String_ 的重载 WriteStartElement 例如

    string ns = "http://www.sitemaps.org/schemas/sitemap/0.9";
    

    然后

    writer.WriteStartElement("urlset", ns);
    writer.WriteStartElement("url", ns);
    

    等等。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2014-01-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-21
      • 1970-01-01
      • 2011-08-18
      相关资源
      最近更新 更多