我有一个有效的sitemap.xml文件。当我尝试将此文件作为sitemap.xml提供时,会出现问题。我收到以下错误:
This page contains the following errors:
error on line 1 at column 95: Extra content at the end of the document
Below is a rendering of the page up to the first error.
当我从浏览器检查/sitemap.xml时,每个元素标记都会将其添加到其中。
<url xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
the rest
</url>
以下是我从控制器返回文件的方法:
XmlDocument xml = new XmlDocument();
xml.Load(@"C:\sitemap.xml");
return Content(xml.DocumentElement.InnerXml, "application/xml");
以下是我拥有并尝试返回的文件的示例
<?xml version="1.0" encoding="utf-8"?>
<urlset
xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">
<url>
<loc>LINK</loc>
</url>
THE REST OF URLS
</urlset>
我试过切换&#34; application / xml&#34; to&#34; text / xml&#34;但没有解决这个问题。我没有正确使用XmlDocument,还是我不完全理解返回Content()会发生什么?
感谢任何帮助。
谢谢
答案 0 :(得分:1)
最终解决了什么是一个简单的修复。
XmlDocument xml = new XmlDocument();
xml.Load(@"C:\sitemap.xml");
return Content(xml.DocumentElement.InnerXml, "application/xml");
已更改为
XmlDocument xml = new XmlDocument();
xml.Load(@"C:\sitemap.xml");
return Content(xml.DocumentElement.OuterXml, "application/xml");
希望以后可以帮助别人。