Mega Code Archive

 
Categories / ASP.Net Tutorial / Configuration
 

The AdminUsersSection class enables you to represent a list of users

File: App_Code\AdminUsersSection.cs using System; using System.Configuration; namespace MyNamespace {     public class AdminUsersSection : ConfigurationSection     {         [ConfigurationProperty("", IsDefaultCollection = true)]         public AdminUsersCollection Users         {             get { return (AdminUsersCollection)this[""]; }         }     }     public class AdminUsersCollection : ConfigurationElementCollection     {         protected override ConfigurationElement CreateNewElement()         {             return new AdminUser();         }         protected override object GetElementKey(ConfigurationElement element)         {             return ((AdminUser)element).Name;         }         public AdminUsersCollection()         {             this.AddElementName = "user";         }     }     public class AdminUser : ConfigurationElement     {         [ConfigurationProperty("name", IsRequired = true, IsKey = true)]         public string Name         {             get { return (string)this["name"]; }             set { this["name"] = value; }         }         [ConfigurationProperty("password", IsRequired = true)]         public string Password         {             get { return (string)this["password"]; }             set { this["password"] = value; }         }     } }              File: Web.config <configuration> <configSections>   <sectionGroup name="system.web">     <section       name="adminUsers"       type="MyNamespace.AdminUsersSection"       allowLocation="true"       allowDefinition="Everywhere" />   </sectionGroup> </configSections> <system.web>   <adminUsers>     <user name="Bob" password="secret" />     <user name="Fred" password="secret" />   </adminUsers> </system.web> </configuration> Displaying the contents of the adminUsers section in a BulletedList control. <%@ Page Language="C#" %> <%@ Import Namespace="MyNamespace" %> <%@ Import Namespace="System.Web.Configuration" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <script runat="server">     void Page_Load()     {         AdminUsersSection section = (AdminUsersSection)WebConfigurationManager.GetWebApplicationSection("system.web/adminUsers");         bltAdminUsers.DataSource = section.Users;         bltAdminUsers.DataBind();     } </script> <html xmlns="http://www.w3.org/1999/xhtml" > <head id="Head1" runat="server">     <title>Show AdminUsersSection</title> </head> <body>     <form id="form1" runat="server">     <div>     <h1>Administrators</h1>     <asp:BulletedList         id="bltAdminUsers"         DataTextField="Name"         Runat="server" />     </div>     </form> </body> </html>