实现IConfigurationSectionHandler接口来编写自

系统 1690 0
发表时间:2008-4-4 10:55:00

代码如下:
using System;
using System.Collections;
using System.Collections.Generic;
using System.Text;
using System.Configuration;
using System.Xml;


namespace Beyondbit.Portal.ConfigService {
    public class TopMenuConfigItem {
        public string Text;
        public string Value;
        public string Url;
        public string Description;
    }

    public class TopMenuConfig : IConfigurationSectionHandler {

        private IList<TopMenuConfigItem> topMenus;
        public IList<TopMenuConfigItem> TopMenus {
            get {
                return topMenus;
            }
        }

        public static TopMenuConfig Instance() {
            return ConfigurationManager.GetSection("TopMenuConfig") as TopMenuConfig;
        }

        #region IConfigurationSectionHandler Members

        object IConfigurationSectionHandler.Create(object parent, object configContext, XmlNode section) {
            XmlNode node = section;
            topMenus = new List<TopMenuConfigItem>(node.ChildNodes.Count);

            TopMenuConfigItem m = null;
            foreach (XmlNode n in node.ChildNodes) {
                if (n.NodeType != XmlNodeType.Comment) {
                    m = new TopMenuConfigItem();
                    m.Description = n.Attributes["Description"].Value;
                    m.Text = n.Attributes["Text"].Value;
                    m.Url = n.Attributes["Url"].Value;
                    m.Value = n.Attributes["Value"].Value;
                    topMenus.Add(m);
                }
            }

            return this;
        }

        #endregion
    }
}


Web.config如下:
<?xml version="1.0"?>
<configuration>
 </configSections>
    <section name="TopMenuConfig" type="Beyondbit.Portal.ConfigService.TopMenuConfig,Beyondbit.Portal.ConfigService" />
  </configSections>

<TopMenuConfig>
    <topMenu Text=" 邮件 " Value="ExchangeMail" Url=" http://mail.pudong.sh/owa/?cmd=contents " Description="http://www.blog.com.cn/ 邮 件 " />
    <topMenu Text=" 通讯录 " Value="link" Url=" http://contact.pudong.sh/web/Contact/ContactMain.aspx " Description="http://www.blog.com.cn/通讯录" />
    <topMenu Text=" 共享日历 " Value="calendar" Url=" http://calendar.pudong.sh/web/calendar/calendarmain.aspx " Description="http://www.blog.com.cn/共享日历" />
    <topMenu Text=" 短信息 " Value="sms" Url=" http://sms.pudong.sh/Web/User/SmsSend.aspx " Description="http://www.blog.com.cn/短信息" />
    <topMenu Text=" 会议通知 " Value="meeting" Url=" http://meeting.pudong.sh/tasks/tasklist.aspx " Description="http://www.blog.com.cn/会议通知" />
  </TopMenuConfig>
  <appSettings />
 <system.web>
 </system.web>
</configuration>

实现IConfigurationSectionHandler接口来编写自定义配置


更多文章、技术交流、商务合作、联系博主

微信扫码或搜索:z360901061

微信扫一扫加我为好友

QQ号联系: 360901061

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描下面二维码支持博主2元、5元、10元、20元等您想捐的金额吧,狠狠点击下面给点支持吧,站长非常感激您!手机微信长按不能支付解决办法:请将微信支付二维码保存到相册,切换到微信,然后点击微信右上角扫一扫功能,选择支付二维码完成支付。

【本文对您有帮助就好】

您的支持是博主写作最大的动力,如果您喜欢我的文章,感觉我的文章对您有帮助,请用微信扫描上面二维码支持博主2元、5元、10元、自定义金额等您想捐的金额吧,站长会非常 感谢您的哦!!!

发表我的评论
最新评论 总共0条评论