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

 更新时间:2013年11月29日 10:22:09   作者:  
这篇文章主要介绍了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;
        }

相关文章

  • C#实现加密与解密详解

    C#实现加密与解密详解

    本文详细讲解了C#实现加密与解密详解的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-06-06
  • DevExpress实现GridControl删除所有行的方法

    DevExpress实现GridControl删除所有行的方法

    这篇文章主要介绍了DevExpress实现GridControl删除所有行的方法,对于C#初学者有一定的参考借鉴价值,需要的朋友可以参考下
    2014-08-08
  • C#中的类继承详解

    C#中的类继承详解

    大家好,本篇文章主要讲的是C#中的类继承详解,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-02-02
  • C# RGB图像和灰度图像互转的实现

    C# RGB图像和灰度图像互转的实现

    在我们的图像类型教程中定义了RGB颜色模型和灰度格式,本文主要介绍了C# RGB图像和灰度图像互转的实现,文中通过代码介绍的非常清楚,具有一定的参考价值,感兴趣的可以了解一下
    2023-08-08
  • 详解C#使用AD(Active Directory)验证内网用户名密码

    详解C#使用AD(Active Directory)验证内网用户名密码

    这篇文章主要介绍了详解C#使用AD(Active Directory)验证内网用户名密码的相关资料,希望通过本文能帮助到大家,让大家实现这样的功能,需要的朋友可以参考下
    2017-10-10
  • C#之字符串截取--Regex.Match使用

    C#之字符串截取--Regex.Match使用

    这篇文章主要介绍了C#之字符串截取--Regex.Match使用解读,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • c#闭包使用方法示例

    c#闭包使用方法示例

    这篇文章主要介绍了如何使用C#的闭包功用,例子很简单,大家参考使用吧
    2013-11-11
  • C#创建dll类库的图文步骤

    C#创建dll类库的图文步骤

    类库让我们的代码可复用,我们只需要在类库中声明变量一次,就能在接下来的过程中无数次地使用,而无需在每次使用前都要声明它。这样一来,就节省了我们的内存空间,需要的朋友可以参考下
    2017-01-01
  • c#的treeview绑定和获取值的方法

    c#的treeview绑定和获取值的方法

    这篇文章主要介绍了c#的treeview绑定和获取值的方法,需要的朋友可以参考下
    2014-04-04
  • C#用websocket实现简易聊天功能(客户端)

    C#用websocket实现简易聊天功能(客户端)

    这篇文章主要为大家详细介绍了C#用websocket实现简易聊天功能,客户端方向,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-02-02

最新评论