• 单个sitemappath使用多个sitemap范例


         当用到多个站点地图时,要动态指定,可在MasterPage的PageLoad事件中指定,如下:
    this.smpDataSource.Provider = System.Web.SiteMap.Providers["ComXmlSiteMapProvider"];

    当然,你得在web.config中加入站点地图的相关内容,如:
    <siteMap defaultProvider="PrisonXmlSiteMapProvider" enabled="true">
    <providers>
    <add name="PrisonXmlSiteMapProvider"
    description="SiteMap provider that reads in .sitemap files."
    type="System.Web.XmlSiteMapProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
    siteMapFile="PrisonWeb.sitemap" />
    <add name="ComXmlSiteMapProvider"
    description="SiteMap provider that reads in .sitemap files."
    type="System.Web.XmlSiteMapProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
    siteMapFile="ComWeb.sitemap" />
    </providers>
    </siteMap>
        上面的例子用到两个站点地图:PrisonWeb.sitemap和ComWeb.sitemap,在web.config里的配置方式上面例子已经贴出来了,你复制过去改一下站点地图文件名为你实际的文件名就行了.
    下面是在MasterPage的PageLoad事件中指定用那一个站点地图的例子:
    protected void Page_Load(object sender, EventArgs e)
    {
    if (!Page.IsPostBack)
    {
    if (Session["PrisonCode"].ToString().ToUpper() == "PNOTIN")
    {
    //超级用户,显示全部可用菜单项
    this.smpDataSource.Provider = System.Web.SiteMap.Providers["ComXmlSiteMapProvider"];
    }
    else
    {
    //非超级管理,仅显示XX可见的菜单项
    this.smpDataSource.Provider = System.Web.SiteMap.Provider;
    }
    }
    }
  • 相关阅读:
    AtCoder Grand Contest 001
    在AT151上面测试串口通讯
    i2c tools 使用
    STM32CUBEF4 实现USB 虚拟串口
    SPI总线工作模式
    树莓派3b+ wifi无线连接
    树莓派开机运行Python脚本 控制LED灯闪烁
    树莓派 使用python来操作GPIO 控制LED灯
    解决树莓派新版系统 ssh连接不了问题
    C# textBox控件只允许为数字和小数点并且提取出这个数字
  • 原文地址:https://www.cnblogs.com/xiaoshi/p/864925.html
Copyright © 2020-2023  润新知