c#生成站点地图(SiteMapPath)文件示例程序

时间:2022-08-03 02:26:55 


//创建站点地图
        private void CreateSiteMap(DataSet ds)
        {

            XmlDeclaration declareation;
            declareation = xmlDoc.CreateXmlDeclaration("1.0", "UTF-8", null);
            xmlDoc.AppendChild(declareation);

            XmlElement xeRoot = xmlDoc.CreateElement("siteMap");
            xmlDoc.AppendChild(xeRoot);

            XmlElement xroot = xmlDoc.CreateElement("siteMapNode");
            xroot.SetAttribute("title", "");
            xroot.SetAttribute("url", "#");
            xeRoot.AppendChild(xroot);

            for (int i = 0; i <= ds.Tables[0].Rows.Count - 1; i++)
            {
                DataRowView row = ds.Tables[0].DefaultView[i];

                string MainMenu = row["MainMenu"].ToString();
                string NavigateUrl = row["NavigateUrl"].ToString();
                if (MainMenu != str)
                {
                    XmlElement siteMapNode = xmlDoc.CreateElement("siteMapNode");
                    siteMapNode.SetAttribute("title", MainMenu);
                    siteMapNode.SetAttribute("description", "");
                    siteMapNode.SetAttribute("url", NavigateUrl);
                    xroot.AppendChild(siteMapNode);
                    str = AddChildNode(MainMenu);
                }
            }
            xmlDoc.Save(Server.MapPath("\\Web.sitemap"));
        }

        //添加子节点
        private string AddChildNode(String text)
        {
            string sql = "select * from Menu Where MainMenu ='" + text + "'";
            DataSql data = new DataSql();
            data.DataCon();
            DataSet ds = data.GetDataset(sql);
            XmlNode root = xmlDoc.SelectSingleNode("/siteMap/siteMapNode/siteMapNode[@title='" + text + "']");
            for (int i = 0; i <= ds.Tables[0].Rows.Count - 1; i++)
            {
                DataRowView row = ds.Tables[0].DefaultView[i];

                string ChildMenu = row["ChildMenu"].ToString();
                if (ChildMenu != "")
                {
                    string NavigateUrl = row["NavigateUrl"].ToString();

                    XmlElement siteMapNode = xmlDoc.CreateElement("siteMapNode");
                    siteMapNode.SetAttribute("title", ChildMenu);
                    siteMapNode.SetAttribute("description", "");
                    siteMapNode.SetAttribute("url", NavigateUrl);
                    root.AppendChild(siteMapNode);
                }
            }
            return text;
        }

标签:SiteMapPath,站点地图,c#
0
投稿

猜你喜欢

  • Java剑指offer之删除链表的节点

    2023-05-19 15:30:27
  • Java多线程 Guarded Suspension设计模式

    2023-03-12 01:52:00
  • jvm虚拟机类加载机制详解

    2021-10-21 08:33:28
  • 详解JAVAEE——SSH三大框架整合(spring+struts2+hibernate)

    2022-09-20 04:41:04
  • C#使用三层架构开发Winform的详细案例

    2023-08-08 03:22:24
  • SpringBoot+Spring Security+JWT实现RESTful Api权限控制的方法

    2022-07-18 03:38:36
  • UnityUI中绘制线状统计图

    2022-12-03 14:30:43
  • C# 特殊的string类型详解

    2022-02-10 14:11:59
  • java多线程实现下载图片并压缩

    2023-01-17 22:28:34
  • 详解IDEA多module项目maven依赖的一些说明

    2023-07-21 06:09:05
  • Java实例讲解Comparator的使用

    2021-07-15 09:16:58
  • Spring JPA联表查询之OneToOne源码详解

    2022-08-06 13:57:55
  • SpringMVC编程使用Controller接口实现控制器实例代码

    2023-02-01 02:03:36
  • Java多态的全面系统解析

    2023-06-22 13:39:22
  • spring+srpingmvc+hibernate实现动态ztree生成树状图效果

    2022-07-21 21:41:59
  • Spring Data JPA 之 JpaRepository的使用

    2023-11-24 21:23:40
  • javaweb Servlet开发总结(二)

    2023-10-31 11:51:48
  • Spring如何基于注解配置使用ehcache

    2022-08-16 03:24:32
  • Android带进度的圆形进度条

    2023-08-05 21:47:18
  • java中List删除时需要的注意事项

    2023-11-11 01:28:00
  • asp之家 软件编程 m.aspxhome.com