⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sectioncollection.cs

📁 ASP开发网站的 关于网站的设计和说明 还有SQL的程序 数据库
💻 CS
字号:
namespace ASPNET.StarterKit.Communities {
    
    using System;
    using System.Collections;
    using System.Collections.Specialized;


    //*********************************************************************
    //
    // SectionCollection Class
    //
    // Represents a collection of SectionInfo objects representing 
    // community sections.
    //
    //*********************************************************************
    
    public class SectionCollection : Hashtable {
    
        ArrayList orderedSections = new ArrayList();
        Hashtable sectionsByID = new Hashtable();
        SectionInfo homeSection = null;


        //*********************************************************************
        //
        // Add Method
        //
        // Adds a new SectionInfo object to the collection. Also checkes
        // whether section is home section and adds to ordered collection. 
        //
        //*********************************************************************

        override public void Add(Object key, Object value) {
                SectionInfo _sectionInfo = (SectionInfo)value;

                // Don't allow duplicate values
                if (Contains(key))
                    return;

                
                if (_sectionInfo.ParentSectionID == -1)
                    homeSection = _sectionInfo; 
                    
                orderedSections.Add(_sectionInfo);
                sectionsByID.Add(_sectionInfo.ID, value); 
                base.Add(key, value);
        }
 

        //*********************************************************************
        //
        // this Indexer
        //
        // Adds a SectionInfo object. 
        //
        //*********************************************************************

        override public Object this[Object key] {
            set {
                // Don't allow duplicate values
                if (Contains(key))
                    return;

                orderedSections.Add(value);
                sectionsByID.Add(((SectionInfo)value).ID, value); 
                base[key] = value;
            }
        }

 
        //*********************************************************************
        //
        // this Indexer
        //
        // Returns a SectionInfo object based on path. 
        //
        //*********************************************************************

        public SectionInfo this[string path] {
            get {
                return (SectionInfo)base[path];
            }
        }    
 

        //*********************************************************************
        //
        // GetOrderedSections Method
        //
        // Returns an ordered list of sections. 
        //
        //*********************************************************************
        
        public ArrayList GetOrderedSections() {
            return orderedSections;
        }


        //*********************************************************************
        //
        // GetSectionByID Method
        //
        // Returns SectionInfo object from a section ID. 
        //
        //*********************************************************************
        
        public SectionInfo GetSectionByID(int sectionID) {
            return (SectionInfo)sectionsByID[sectionID];
        }
        

        //*********************************************************************
        //
        // DefaultSection Property
        //
        // Returns the default (home) section for a community. 
        //
        //*********************************************************************
        
        public SectionInfo DefaultSection {
            get { return homeSection; }
        }
        

        //*********************************************************************
        //
        // SectionCollection Constructor
        //
        // Initializes SectionCollection as a case-insensitive Hashtable. 
        //
        //*********************************************************************
        
        public SectionCollection() : base(new CaseInsensitiveHashCodeProvider(), new CaseInsensitiveComparer() ) {}
        
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -