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# 程序结构的相关资料,文中讲解非常细致,帮助大家更好的理解和学习C#,感兴趣的朋友可以了解下
    2020-07-07
  • 详解C# WinForm如何优雅的处理异常

    详解C# WinForm如何优雅的处理异常

    在运行、调试代码的时候,会遇到一些异常情况,很多时候我们代码写得足够健壮,所以出现的概率比较低,但如果一出现,我们又没处理好,就可能会导致程序的崩溃、退出。本文主要介绍了WinForm处理异常的方法,需要的可以参考下
    2022-09-09
  • c# 异步编程基础讲解

    c# 异步编程基础讲解

    这篇文章主要介绍了c# 异步编程的相关资料,帮助大家更好的理解和学习使用c#,感兴趣的朋友可以了解下
    2021-04-04
  • 解析C# 程序结构

    解析C# 程序结构

    在我们学习 C# 编程语言的基础构件块之前,让我们先看一下 C# 的最小的程序结构,以便作为接下来章节的参考
    2021-07-07
  • c# 引用Nlog插件的步骤

    c# 引用Nlog插件的步骤

    这篇文章主要介绍了c# 引用Nlog插件的步骤,帮助大家更好的理解和学习使用c#,感兴趣的朋友可以了解下
    2021-04-04
  • C#基于正则表达式实现获取网页中所有信息的网页抓取类实例

    C#基于正则表达式实现获取网页中所有信息的网页抓取类实例

    这篇文章主要介绍了C#基于正则表达式实现获取网页中所有信息的网页抓取类,结合完整实例形式分析了C#正则网页抓取类与使用技巧,需要的朋友可以参考下
    2017-05-05
  • Unity实现俄罗斯方块(三)

    Unity实现俄罗斯方块(三)

    这篇文章主要为大家详细介绍了Unity实现俄罗斯方块的第一部分代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-06-06
  • C#实现自定义ListBox背景的示例详解

    C#实现自定义ListBox背景的示例详解

    这篇文章主要为大家详细介绍了如何利用C#实现自定义ListBox背景,文中的示例代码讲解详细,对我们学习C#有一定的帮助,感兴趣的小伙伴可以跟随小编一起了解一下
    2022-12-12
  • C语言使用getch()读取方向键

    C语言使用getch()读取方向键

    getch()是编程中所用的函数,这个函数是一个不回显函数,当用户按下某个字符时,函数自动读取,无需按回车,有的C语言命令行程序会用到此函数做游戏,但是这个函数并非标准函数,要注意移植性
    2021-07-07
  • Unity 百度AI实现Logo商标识别

    Unity 百度AI实现Logo商标识别

    本文主要介绍了Unity实现检测和识别图片中的品牌LOGO信息。即对于输入的一张图片(可正常解码,且长宽比适宜),输出图片中LOGO的名称、位置和置信度。需要的可以参考一下
    2022-01-01

最新评论