//------------------------------------------------------------------------------ // // Copyright (c) Microsoft Corporation. All rights reserved. // //------------------------------------------------------------------------------ /***************************************************************************** From machine.config ******************************************************************************/ namespace System.Web.Configuration { using System; using System.Xml; using System.Configuration; using System.Collections.Specialized; using System.Collections; using System.Globalization; using System.IO; using System.Text; using System.Web.Util; using System.ComponentModel; using System.Security.Permissions; [ConfigurationCollection(typeof(FormsAuthenticationUser), AddItemName = "user", CollectionType = ConfigurationElementCollectionType.BasicMap)] public sealed class FormsAuthenticationUserCollection : ConfigurationElementCollection { private static ConfigurationPropertyCollection _properties; static FormsAuthenticationUserCollection() { _properties = new ConfigurationPropertyCollection(); } public FormsAuthenticationUserCollection() { } // public properties public String[] AllKeys { get { return StringUtil.ObjectArrayToStringArray(BaseGetAllKeys()); } } public new FormsAuthenticationUser this[string name] { get { return (FormsAuthenticationUser)BaseGet(name); } // Having a setter here would be strange in that you could write // collection["Name1"] = new FormsAuthenticationUser("differentName"... // } protected override ConfigurationPropertyCollection Properties { get { return _properties; } } public FormsAuthenticationUser this[int index] { get { return (FormsAuthenticationUser)BaseGet(index); } set { BaseAdd(index, value); } } // Protected Overrides protected override ConfigurationElement CreateNewElement() { return new FormsAuthenticationUser(); } protected override Object GetElementKey(ConfigurationElement element) { return ((FormsAuthenticationUser)element).Name; } protected override string ElementName { get { return "user"; } } protected override bool ThrowOnDuplicate { get { return true; } } public override ConfigurationElementCollectionType CollectionType { get { return ConfigurationElementCollectionType.BasicMap; } } // public methods public void Add(FormsAuthenticationUser user) { BaseAdd(user); } public void Clear() { BaseClear(); } public FormsAuthenticationUser Get(int index) { return (FormsAuthenticationUser)BaseGet(index); } public FormsAuthenticationUser Get(string name) { return (FormsAuthenticationUser)BaseGet(name); } public String GetKey(int index) { return (String) BaseGetKey(index); } public void Remove(string name) { BaseRemove(name); } public void RemoveAt(int index) { BaseRemoveAt(index); } public void Set(FormsAuthenticationUser user) { BaseAdd(user, false); } } }