C# 中生成 SiteMap 的 Lib

发布于 2024-08-19 21:58:46 字数 115 浏览 3 评论 0原文

我可以在 C# 中使用一个库来为我的 asp.net 网站生成站点地图吗?

我正在寻找可以插入数据的东西,它会告诉我生成的站点地图是否已达到其限制或者文件大小是否已达到其限制。然后允许我将其保存为文件

Is there a lib i can use in C# to generate a sitemap for my asp.net website?

I am looking for something that i can insert data into and it will tell me if the generated sitemap has reach its limit or if the file size has reach it limit. Then allows me to save it as a file

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(5

自演自醉 2024-08-26 21:58:47

在这里您可以检查我的代码,根据已准备好的 SiteMapUrl 对象集合生成 Sitemap.xml:

            XNamespace ns = XNamespace.Get("http://www.sitemaps.org/schemas/sitemap/0.9");
        XElement urlset = null;
        XDocument siteMapDocument = new XDocument(urlset = new XElement(ns + "urlset"));
        foreach (var links in siteMap.SiteMapUrls)
        {
            urlset.Add(new XElement
            (ns + "url",
            new XElement(ns + "loc",links.Location),
            new XElement(ns + "lastmod", DateTime.Now),
            new XElement(ns + "changefreq", Enum.GetName(typeof(SiteMapUrlChangeFreqs), links.ChangeFreq)),
            new XElement(ns + "priority", "0.2")
            ));
        }

        siteMapDocument.Save(String.Format("{0}\\{1}",AppDomain.CurrentDomain.BaseDirectory,"SiteMap.xml"));

Here you can check my code to generate Sitemap.xml based on already prepared collection of SiteMapUrl objects:

            XNamespace ns = XNamespace.Get("http://www.sitemaps.org/schemas/sitemap/0.9");
        XElement urlset = null;
        XDocument siteMapDocument = new XDocument(urlset = new XElement(ns + "urlset"));
        foreach (var links in siteMap.SiteMapUrls)
        {
            urlset.Add(new XElement
            (ns + "url",
            new XElement(ns + "loc",links.Location),
            new XElement(ns + "lastmod", DateTime.Now),
            new XElement(ns + "changefreq", Enum.GetName(typeof(SiteMapUrlChangeFreqs), links.ChangeFreq)),
            new XElement(ns + "priority", "0.2")
            ));
        }

        siteMapDocument.Save(String.Format("{0}\\{1}",AppDomain.CurrentDomain.BaseDirectory,"SiteMap.xml"));
笑咖 2024-08-26 21:58:47

您是指 SiteMap 类吗?

SiteMap 类

Do you mean the SiteMap Class?

SiteMap Class

緦唸λ蓇 2024-08-26 21:58:47

也许是我的 ? :)

您可以在此处找到一些使用示例和下载文件。查找“站点地图生成器”部分。

Maybe mine? :)

Some example of usage and download file you can find here. Look for SiteMap Generator section.

追我者格杀勿论 2024-08-26 21:58:47

AFAIK 没有您想要做的事情的库(根据您的评论判断)。但是,您可以使用包装到您自己的类中的 .net xml 来生成它。它应该不难。您还应该考虑 ascii 字符和 4 个字节中断(2 个表示 \r,2 个表示 \n)。

AFAIK theres no libs for what you want to do (judging by your comments). You can however use .net xml wrapped into your own class to generate it. Its shouldnt be difficult. You also should take account of ascii characters and 4 byte breaks (2 for \r and 2 for \n).

节枝 2024-08-26 21:58:47

使用 ASP.NET 时,有必要澄清您所谈论的是 ASP.NET 站点地图(用于站点导航)和搜索引擎站点地图。

如果您指的是搜索引擎站点地图,请查看 http://www.blackbeltcoder.com/Articles/asp/dynamic-sitemaps-in-asp-net。它提供了执行您想要的操作的代码。

When working with ASP.NET, it's necessary to clarify if you are talking about an ASP.NET sitemap (used for site navigation), and a search-engine sitemap.

If you are referring to a search-engine sitemap, check out the article at http://www.blackbeltcoder.com/Articles/asp/dynamic-sitemaps-in-asp-net. It presents code for doing what you want.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文