asp.net修改web.config

转载 2007年09月19日 10:20:00

前台代码

 

<%@ Page Language="C#" AutoEventWireup="true" Debug="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    
<title>Untitled Page</title>
</head>
<body>
    
<form id="form1" runat="server">
    
<div>
    
<table>
    
<tr><td>key</td><td><asp:DropDownList ID="ddlst" runat="server" AutoPostBack="true" /></td></tr>
    
<tr><td></td><td><asp:TextBox ID="txtPre" runat="server" /></td></tr>
    
<tr><td></td><td><asp:TextBox ID="txtEnd" runat="server" /></td></tr>
    
<tr><td colspan="2"><asp:Button ID="btn" runat="server" Text="修改" OnClick="btn_Click" /></td></tr>
    
</table>
    
</div>
    
</form>
</body>
</html>

 

后台代码:

 

 

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.Web.Configuration;
using System.Xml;

public partial class _Default : System.Web.UI.Page 
{
    
protected void Page_Load(object sender, EventArgs e)
    {
        
this.ddlst.SelectedIndexChanged += new EventHandler(ddlst_SelectedIndexChanged);
        
if (!IsPostBack)
        {
            BindList();           
            
this.txtPre.Text = this.ddlst.SelectedValue;
        }
    }

    
private void ddlst_SelectedIndexChanged(object sender, EventArgs e)
    {
       
this.txtPre.Text = this.ddlst.SelectedValue;
    }

    
private void BindList()
    {
        
string strFileName = Server.MapPath("."+ @"Web.config";
        XmlDocument doc 
= new XmlDocument();
        doc.Load(strFileName);
        XmlNodeList lstTop 
= doc.DocumentElement.ChildNodes;
        
foreach (XmlElement el in lstTop)
        {
            
//Response.Write(el.Name + ":top node name:<br />");
            if (el.Name.ToLower() == "appsettings")
            {
                XmlNodeList lstApp 
= el.ChildNodes;
                
if (lstApp.Count > 0)
                {
                    
this.ddlst.Items.Clear();
                    
foreach (XmlElement elApp in lstApp)
                    {                      
                       
this.ddlst.Items.Add(new ListItem(elApp.Attributes["key"].InnerXml,elApp.Attributes["value"].Value));
                    }
                }
                
break;                
            }
        }
    }

    
public void btn_Click(object sender, EventArgs e)
    {
        
//Response.Write("selected value:" + this.ddlst.SelectedValue + "<br />");
        string strFileName = Server.MapPath("."+ @"Web.config";
        XmlDocument doc 
= new XmlDocument();
        doc.Load(strFileName);
        XmlNodeList lstTop 
= doc.DocumentElement.ChildNodes;
        
foreach (XmlElement el in lstTop)
        {        
            
if (el.Name.ToLower() == "appsettings")
            {
                XmlNodeList lstApp 
= el.ChildNodes;
                
if (lstApp.Count > 0)
                {                
                    
foreach (XmlElement elApp in lstApp)
                    {
                       
// Response.Write("key name:" + elApp.Attributes["key"].InnerXml + "<br />");
                       
// Response.Write("selectedvalue:" + this.ddlst.SelectedValue.ToLower() + "<br />");
                        if (this.ddlst.SelectedItem.Text.ToLower() == elApp.Attributes["key"].InnerXml.ToLower())
                        {
                            
//Response.Write("key name:" + elApp.Attributes["key"].InnerXml + "<br />");
                           
// Response.Write("value:" + this.txtEnd.Text + "<br />");
                            elApp.Attributes["value"].Value = this.txtEnd.Text;
                        }
                    }
                }
            }
        }
        doc.Save(strFileName);
        BindList();
    }
}

在Web.Config文件中使用configSource,避免动态修改web.config导致asp.net重启(另添加一个Config文件用于管理用户数据)

我们都知道,在asp.net中修改了配置文件web.config后,会导致应用程序重启,所有 会话(session)丢失。然而,应用程序的配置信息放在配置文件里是最佳选择,在后台修改了配置后导致所有...
  • thy822
  • thy822
  • 2010年09月13日 10:40
  • 1897

ASP.NET程序中动态修改web.config中的设置项目(前台页面代码)

using System;using System.Collections;using System.ComponentModel;using System.Data;using System.Dra...
  • ucshng
  • ucshng
  • 2007年05月29日 22:01
  • 447

Asp.Net 之 Web.config 配置文件详解

转载地址:http://www.cnblogs.com/xinaixia/p/4299373.html   在asp.net中配置文件名一般默认是web.config。每个web.config文件都...
  • Humourer
  • Humourer
  • 2017年07月26日 17:15
  • 1705

【ASP.NET】将数据库连接字符串写在Web.config

每一个ASP.NET解决方案都有一个Web.config,这货相当于jsp的web.xml。同样,可以将数据库连接字符串等一些核心信息,藏在这个文件里面。 具体做法如下,对没有任何属性的connec...
  • yongh701
  • yongh701
  • 2016年01月11日 11:10
  • 1597

asp.net中配置文件web.config文件的读取和修改

1. 读取:首先在中加入 appSettings>       在代码中使用ConfigurationManager.AppSettings["FrontVersion"];来读取Fron...
  • kang200621010322
  • kang200621010322
  • 2013年10月12日 16:32
  • 987

ASP.NET的高级配置Web.config和Machine.Config

  我们都知道,使用ASP是不需要也没有地方可以配置的(IIS配置除外),因此,我们不能针对一些特定的网站应用或者特定的网站目录,设置一些特殊配置,可以这样说,ASP的应用,是比较“傻瓜化”的,网站设...
  • flashlm
  • flashlm
  • 2007年08月31日 13:45
  • 4072

Asp.net中web.config配置文件最全面详解

web.config是一个XML文件,用来储存Asp.net Web应用程序的配置信息,包括数据库连接字符、身份安全验证等,可以出现在Asp.net Web应用程序服务器上的任何目录中,每个Web.c...
  • u011966339
  • u011966339
  • 2017年03月22日 09:52
  • 2530

ASP.NET的Web.Config 节点的属性设置说明

 http://msdn.microsoft.com/zh-cn/library/b5ysx397(VS.80).aspx ...
  • fengsuifeng___
  • fengsuifeng___
  • 2016年11月02日 11:28
  • 241

C#-动态改变Web.config的值

需求:什么时候会用到动态改变Web.config内的值? 在Web.config定义了一个全局设置值A,因为程序运行中满足了某个条件,要将A的值改变Web.config中定义: 代...
  • qq_32452623
  • qq_32452623
  • 2016年12月14日 18:53
  • 1880

ASP.NET Web.config配置文件的基本使用方法。很适合新手参看

花了点时间整理了一下ASP.NET Web.config配置文件的基本使用方法。很适合新手参看,由于Web.config在使用很灵活,可以自定义一些节点。所以这里只介绍一些比较常用的节点。 xml ...
  • wangyujian1223
  • wangyujian1223
  • 2016年10月27日 10:45
  • 682
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:asp.net修改web.config
举报原因:
原因补充:

(最多只允许输入30个字)