<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
Custom Configuration Sections
File: Default.aspx.cs
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Collections;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
lblTime.Text = "Posted at " + DateTime.Now.ToLongTimeString();
if (!IsPostBack)
{
string strTest;
strTest = ((Hashtable)ConfigurationManager.GetSection("altDB"))["Test"].ToString();
lblTest.Text = strTest;
lblContent.Text = ((Hashtable)ConfigurationManager.GetSection("altDB"))["Content"].ToString();
CreateGrid();
}
}
private void CreateGrid()
{
DataSet dsGrid = new DataSet();
dsGrid = (DataSet)ConfigurationManager.GetSection("system.web/DataSetSectionHandler");
gv.DataSource = dsGrid.Tables[0];
gv.DataBind();
}
}
File: SectionHandlers.cs
using System;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public class DataSetSectionHandler : IConfigurationSectionHandler
{
public Object Create(Object parent,Object configContext,System.Xml.XmlNode section)
{
string strSql;
strSql = section.Attributes.Item(0).Value;
string connectionString = "server=Local; uid=sa; pwd=password; database=Northwind";
SqlDataAdapter da = new SqlDataAdapter(strSql,connectionString);
DataSet dsData = new DataSet();
da.Fill(dsData, "Customers");
return dsData;
}
}
File: Web.Config