Неправильное пространство имен в карте сайта

#c# #model-view-controller #sitemap

#c# #модель-представление-контроллер #Карта сайта

Вопрос:

Я получаю эту ошибку в консоли поиска Google. Я пробовал кучу вещей, но ничего не получалось. Любое предложение, если я что-то упускаю.

Описание: В вашем файле Sitemap или Sitemap index неправильно указано пространство имен.

Пример: в вашем файле Sitemap или Sitemap index не указано ожидаемое пространство имен: http://www.sitemaps.org/schemas/sitemap/0.9 Тег: urlset

Это то, что я вижу на карте сайта:

 <?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns:Xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  

Мой код:

 public XmlSitemapResult(IEnumerable<ISitemapItem> items)
        {
            _items = items;
        }

        public override void ExecuteResult(ControllerContext context)
        {
            string encoding = context.HttpContext.Response.ContentEncoding.WebName;
            XDocument sitemap = new XDocument(new XDeclaration("1.0", "utf-8", "yes"),
                 new XElement("urlset", new XAttribute(XNamespace.Xmlns.GetName("Xmlns"), "http://www.sitemaps.org/schemas/sitemap/0.9"),
                      from item in _items
                      select CreateItemElement(item)
                      )
                 );

            context.HttpContext.Response.ContentType = "text/xml";
            context.HttpContext.Response.Flush();
            context.HttpContext.Response.Write(sitemap.Declaration   sitemap.ToString());
        }
  

Комментарии:

1. Вы уже пытались изменить sitemaps.org/schemas/sitemap/0.9 чтобы google.com/schemas/sitemap/0.9 ?

Ответ №1:

Я думаю, что знаю, в чем проблема, попробуйте удалить Xmlns из тега urlset. Образец XML-карты сайта:

 <?xml version="1.0" encoding="UTF-8"?>

<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">

   <url>

      <loc>http://www.example.com/</loc>

      <lastmod>2005-01-01</lastmod>

      <changefreq>monthly</changefreq>

      <priority>0.8</priority>

   </url>

</urlset> 
  

Шрифт: http://www.sitemaps.org/protocol.html

Комментарии:

1. Да, именно так.

2. Хорошо, я попробую это сделать. так что сделайте это так, правильно? <urlset xmlns=» sitemaps.org/schemas/sitemap/0.9 «>

3. Я отредактировал свой первый пост и добавил один пример. Я считаю, что это необходимо «http: // www «.