sitemaps.xml в asp.net mvc - PullRequest
       25

sitemaps.xml в asp.net mvc

1 голос
/ 17 февраля 2011

Мой веб-сайт имеет динамическое содержимое, создаются новые ссылки.

В моей базе данных есть таблица, в которой почти все добавленные URL.у меня есть sitemaps.xml, а также есть ли простой способ его построения, чтобы при создании новых ссылок я мог пометить его до конца файла sitemap.xml?

Ответы [ 2 ]

2 голосов
/ 17 февраля 2011

Вы можете использовать LINQ to XML для создания карты сайта XML из вашей базы данных, а затем вернуть карту сайта из действия, вернув Content(document.ToString(), "text/xml").

2 голосов
/ 17 февраля 2011

Для сканеров важно иметь возможность сканировать ваш сайт быстрее и с большей точностью.

Вы можете создать контроллер, скажем siteMapController, и в Index добавить следующее

 public ActionResult Index() {
        var xmlString =
            "<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\">";

        xmlString +=
                "<url>" +
               "<loc>Your site</loc>" +
               "<changefreq>weekly</changefreq>" +
               "<priority>0.6</priority>" +
             "</url>" +
           "<url>" +
                    "<loc>Static Link of you site</loc>" + //you can add as many you want
                       "<changefreq>weekly</changefreq>" +
                       "<priority>0.6</priority>" +
                    "</url>" +
                    "<url>";


           //Dynamic links
            xmlString += "<url>" +
                         "<loc>Link of new item"</loc>" +
                         "<lastmod>" + DateTime.Now.ToString("yyyy-MM-dd") + "</lastmod>" +
                         "<changefreq>daily</changefreq>" +
                         "<priority>0.8</priority>" +
                         "</url>";
        }
        xmlString += "</urlset>";
        ViewData["siteMap"] = xmlString;
        return View();
    }

сохраните XML на своем сервере и опубликуйте карту сайта по этой ссылке

https://www.google.com/webmasters/tools/home?hl=en

надеюсь, что это поможет

...