static void Main(string[] args) { var siteMap = new SiteMap(); var myBase = "http://simongoldstone.com"; siteMap.Add(new SiteMapEntry { ChangeFreq = ChangeFrequency.Daily, LastMod = DateTime.Now, Loc = myBase + "/", Priority = 0.9 }); // home page siteMap.Add(new SiteMapEntry { ChangeFreq = ChangeFrequency.Daily, LastMod = DateTime.Now, Loc = myBase + "/contact", Priority = 0.3 }); // contact page ISiteMapRenderer renderer; Console.WriteLine("XML OUTPUT:"); renderer = new SiteMapXmlRenderer(); Console.WriteLine(renderer.Render(siteMap, 1000, 1)); Console.WriteLine("\r\n\r\nHTML OUTPUT:"); renderer = new SiteMapHtmlTableRenderer(); Console.WriteLine(renderer.Render(siteMap, 1000, 1)); Console.WriteLine("\r\n\r\nSITE MAP INDEX OUTPUT:"); var index = new SiteMapIndexRenderer(myBase); Console.WriteLine(index.Render(siteMap)); Console.WriteLine("\r\n\r\nFinished. Press Enter."); Console.ReadLine(); }
public string Render(SiteMap siteMap, int pageSize, int page) { var stringBuilder = new StringBuilder(); stringBuilder.AppendFormat("<p>{0} entries</p>\r\n", siteMap.Entries.Count()); stringBuilder.AppendLine("<table><thead><tr><th>Index</th><th>LastMod</th><th>ChangeFreq</th><th>Priority</th><th>Loc</th></tr></thead><tbody>"); int counter = 0; foreach (var entry in siteMap.Entries.Skip((page - 1) * pageSize).Take(pageSize)) { stringBuilder.AppendFormat("<tr><td>{0}</td><td>{1}</td><td>{2}</td><td>{3}</td><td><a href='{4}' target='_blank'>{4}</a></td></tr>\r\n", ++counter, entry.LastMod.ToShortDateString(), entry.ChangeFreq, entry.Priority, entry.Loc); } stringBuilder.AppendLine("</tbody></table>"); return stringBuilder.ToString(); }
public string Render(SiteMap siteMap, int pageSize, int page) { var stringBuilder = new StringBuilder(); stringBuilder.AppendLine(@"<?xml version=""1.0"" encoding=""utf-8""?>"); stringBuilder.AppendLine(@"<urlset xmlns=""http://www.sitemaps.org/schemas/sitemap/0.9"">"); foreach (var entry in siteMap.Entries.Skip((page - 1) * pageSize).Take(pageSize)) { stringBuilder.AppendLine("<url>"); stringBuilder.AppendFormat(" <loc>{0}</loc>", entry.Loc.ToLowerInvariant()); stringBuilder.AppendFormat(" <lastmod>{0}</lastmod>", entry.LastMod.ToString("yyyy-MM-dd")); stringBuilder.AppendFormat(" <changefreq>{0}</changefreq>", entry.ChangeFreq.ToString().ToLower()); stringBuilder.AppendFormat(" <priority>{0}</priority>", entry.Priority.ToString("N1")); stringBuilder.AppendLine("</url>"); } stringBuilder.AppendLine("</urlset>"); return stringBuilder.ToString(); }
public string Render(SiteMap siteMap) { var stringBuilder = new StringBuilder(); stringBuilder.AppendLine(@"<?xml version=""1.0"" encoding=""UTF-8""?>"); stringBuilder.AppendLine(@"<sitemapindex xmlns=""http://www.sitemaps.org/schemas/sitemap/0.9"">"); int maxPages = (siteMap.Entries.Count() / PAGE_SIZE) + 1; for (int page = 1; page <= maxPages; page++) { var loc = String.Format("{0}sitemap/sitemap-{1}", _baseRoute, page); stringBuilder.AppendLine(@"<sitemap>"); stringBuilder.AppendFormat(@" <loc>{0}</loc>", loc); stringBuilder.AppendFormat(@" <lastmod>{0}</lastmod>", DateTime.Now.ToString("yyyy-MM-dd")); stringBuilder.AppendLine(@"</sitemap>"); } stringBuilder.AppendLine(@"</sitemapindex>"); return stringBuilder.ToString(); }