天天看點

[轉貼]ASP.NET中動态修改web.config中的設定項目

前台代碼

<%@ Page language="c#" Codebehind="WebForm1.aspx.cs" AutoEventWireup="false" Inherits="WebApplication1.WebForm1" %>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >

<HTML>

<HEAD>

<meta name="GENERATOR" Content="Microsoft Visual Studio 7.0">

<meta name="CODE_LANGUAGE" Content="C#">

<meta name="vs_defaultClientScript" content="JavaScript (ECMAScript)">

<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">

</HEAD>

<body MS_POSITIONING="GridLayout">

<form id="Form1" method="post" runat="server">

<FONT >

<asp:TextBox id="TextBox1" style="Z-INDEX: 101; LEFT: 164px; POSITION: absolute; TOP: 190px" runat="server" Width="204px" Height="25px"></asp:TextBox>

<asp:Button id="Button1" style="Z-INDEX: 102; LEFT: 386px; POSITION: absolute; TOP: 188px" runat="server" Width="78px" Height="25px" Text="Button"></asp:Button>

<asp:DropDownList id="DropDownList1" style="Z-INDEX: 103; LEFT: 29px; POSITION: absolute; TOP: 192px" runat="server" Width="130px" Height="22px"></asp:DropDownList>

</FONT>

</form>

</body>

</HTML>

CS頁代碼

using System;

using System.Collections;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Web;

using System.Web.SessionState;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.HtmlControls;

using System.Xml ;

namespace WebApplication1

{

/// <summary>

/// Summary description for WebForm1.

/// </summary>

public class WebForm1 : System.Web.UI.Page

{

protected System.Web.UI.WebControls.TextBox TextBox1;

protected System.Web.UI.WebControls.DropDownList DropDownList1;

protected System.Web.UI.WebControls.Button Button1;

public WebForm1()

{

Page.Init += new System.EventHandler(Page_Init);

}

private void Page_Load(object sender, System.EventArgs e)

{

if(!Page.IsPostBack)

{

//打開某檔案(假設WEB。CONFIG在根目錄中)

string filename=Server.MapPath("/") + @"/web.config";

XmlDocument  xmldoc= new XmlDocument();

xmldoc.Load(filename);

XmlNodeList topM=xmldoc.DocumentElement.ChildNodes;

foreach(XmlElement element in topM)

{

if(element.Name.ToLower()=="appsettings")

{

XmlNodeList _node=element.ChildNodes;

if ( _node.Count >0 )

{

DropDownList1.Items.Clear();

foreach(XmlElement el in _node)

{

DropDownList1.Items.Add(el.Attributes["key"].InnerXml);

}

}

}

}

}

}

private void Page_Init(object sender, EventArgs e)

{

InitializeComponent();

}

#region Web Form Designer generated code

/// <summary>

/// Required method for Designer support - do not modify

/// the contents of this method with the code editor.

/// </summary>

private void InitializeComponent()

{   

this.Button1.Click += new System.EventHandler(this.Button1_Click);

this.Load += new System.EventHandler(this.Page_Load);

}

#endregion

private void Button1_Click(object sender, System.EventArgs e)

{

string filename=Server.MapPath("/") + @"/web.config";

XmlDocument  xmldoc= new XmlDocument();

xmldoc.Load(filename);

XmlNodeList topM=xmldoc.DocumentElement.ChildNodes;

foreach(XmlElement element in topM)

{

if(element.Name.ToLower()=="appsettings")

{

XmlNodeList _node=element.ChildNodes;

if ( _node.Count >0 )

{

foreach(XmlElement el in _node)

{

if(el.Attributes["key"].InnerXml.ToLower()==this.DropDownList1.SelectedItem.Value.ToLower())

{

el.Attributes["value"].Value=this.TextBox1.Text;

}

}

}

}

}

xmldoc.Save(filename);

}

}

}

繼續閱讀