VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > c#编程 >
  • C#教程之c#生成站点地图(SiteMapPath)文件示例程

代码如下:

//创建站点地图
        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;
        }



相关教程