利用程序动态管理Web.config文件

web|程序|动态

 
Web.config文件假设有如下需要管理的配置信息: 

<appSettings>
    <add key="SiteTitle" value="站点名称" />
    <add key="SiteUrl" value="主页网址" />
    <add key="SiteLogo" value="站点Logo" />
    <add key="SiteBanner" value="站点Banner" />
    <add key="SiteEmail" value="联系Email" />
</appSettings>

实现的c#核心代码:

一、将Web.config中的相关信息读入TextBox

private void Page_Load(object sender, System.EventArgs e)
  {
   if(!Page.IsPostBack)
   {
    //将Web.config中的相关值填入TextBox
    this.txtTitle.Text=System.Configuration.ConfigurationSettings.AppSettings["SiteTitle"];
    this.txtUrl.Text=System.Configuration.ConfigurationSettings.AppSettings["SiteUrl"];
    this.txtLogo.Text=System.Configuration.ConfigurationSettings.AppSettings["SiteLogo"];
    this.txtBanner.Text=System.Configuration.ConfigurationSettings.AppSettings["SiteBanner"];
    this.txtEmail.Text=System.Configuration.ConfigurationSettings.AppSettings["SiteEmail"];
   }

  }

二、将修改后的内容写入Web.config

  private void btnSave_Click(object sender, System.EventArgs e)
  {
   string filename=Server.MapPath("web.config");
   string KeyName;//键名称

   XmlDocument  xmldoc= new XmlDocument();
   try
   {
    xmldoc.Load(filename);
   }
   catch
   {
    Response.Write("<script>alert('读文件时错误,请检查 Web.config 文件是否存在!')</script>");
    return;
   }
   
   XmlNodeList DocdNodeNameArr=xmldoc.DocumentElement.ChildNodes;//文档节点名称数组
   foreach(XmlElement DocXmlElement in DocdNodeNameArr)
   {
    if(DocXmlElement.Name.ToLower()=="appsettings")//找到名称为 appsettings 的节点
    {
     XmlNodeList KeyNameArr=DocXmlElement.ChildNodes;//子节点名称数组
     if ( KeyNameArr.Count >0 )
     {
      foreach(XmlElement xmlElement in KeyNameArr)
      {
       KeyName=xmlElement.Attributes["key"].InnerXml;//键值
       switch(KeyName)
       {
        case "SiteTitle":
         xmlElement.Attributes["value"].Value=this.txtTitle.Text;
         break;
        case "SiteUrl":
         xmlElement.Attributes["value"].Value=this.txtUrl.Text;
         break;
        case "SiteLogo":
         xmlElement.Attributes["value"].Value=this.txtLogo.Text;
         break;
        case "SiteBanner":
         xmlElement.Attributes["value"].Value=this.txtBanner.Text;
         break;
        case "SiteEmail":
         xmlElement.Attributes["value"].Value=this.txtEmail.Text;
         break;

       }
      }
     }
    }
   }
   try
   {
    xmldoc.Save(filename);
    Response.Write("<script>alert('OK,信息已保存!')</script>");
   }
   catch
   {
    Response.Write("<script>alert('写文件时错误,请检查 Web.config 文件是否存在!')</script>");
    return;
   }

  }

时间: 2024-11-30 18:53:35

利用程序动态管理Web.config文件的相关文章

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

原文:在Web.Config文件中使用configSource,避免动态修改web.config导致asp.net重启(另添加一个Config文件用于管理用户数据) 我们都知道,在asp.net中修改了配置文件web.config后,会导致应用程序重启,所有 会话(session)丢失.然而,应用程序的配置信息放在配置文件里是最佳选择,在后台修改了配置后导致所有会话丢失是非常不爽的事情,这个时候可将配 置文件中经常需要改变的参数配置节 放到外面来,例如appSetting节. 一.原来的web.

报表查看器 Web 控件 HTTP 处理程序尚未在应用程序的 web.config 文件中注册

问题描述 我在asp.net页面上放了个reportView的控件,也配置了数据源,但是运行后在页面什么也不显示,一片空白.网上的一般配置,比如web.config的配置都有了,查看页面的源文件有:报表查看器配置错误</h2><p>报表查看器Web控件HTTP处理程序尚未在应用程序的web.config文件中注册.请将<addverb="*"path="Reserved.ReportViewerWebControl.axd"type=&

在应用程序根目录.自己定义一个WEB.CONFIG文件.会覆盖掉NET中的WEB.CONFIG吗?

问题描述 在应用程序根目录.自己定义一个WEB.CONFIG文件.会覆盖掉NET中的WEB.CONFIG吗?NET中的WEB.CONFIG里面有好多内容.要是自己定义了.覆盖掉的话.会影响应用程序的执行吗? 解决方案 解决方案二:不会覆盖但是每个程序只能有一个webconfig文件解决方案三:不会覆盖,最近的webconfig生效

如何配置Web.config文件 for ASP.NET

一.认识Web.config文件   Web.config文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式),它可以出现在应用程序的每一个目录中.当你通过VB.NET新建一个Web应用程序后,默认情况下会在根目录自动创建一个默认的  Web.config文件,包括默认的配置设置,所有的子目录都继承它的配置设置.如果你想修改子目录的配置设置,你可以在该子目录下新建一个Web.config文件.它可以提供除

把数据库连接信息写在web.config文件里(vs.net2003)

web|数据|数据库|数据库连接|数据库连接 如果我们把数据库连接信息也就是数据库连接字符串写在web.config里,不但加强了程序的安全,同时也极大的方便了程序的修改.    在web.config文件里添加关键字key是通过<appSettings>标记来实现的,但是appSettings标记通常放在<system.web>.....</system.web>标记外面.例: <configration>     <appSettings>

认识Web.config文件

一.认识Web.config文件 Web.config文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式),它可以出现在应用程序的每一个目录中.当你通过VB.NET新建一个Web应用程序后,默认情况下会在根目录自动创建一个默认的 Web.config文件,包括默认的配置设置,所有的子目录都继承它的配置设置.如果你想修改子目录的配置设置,你可以在该子目录下新建一个Web.config文件.它可以提供除从父目

web.config文件自定义配置节的使用方法的一个简单例子

web web.config文件自定义配置节的使用方法的一个简单例子用来演示的程序名为MyApp,Namespace也是MyApp 1.编辑web.config文件 添加以下内容,声明一个Section <configSections>    <section name="AppConfig" type="MyApp.AppConfig, MyApp" /> </configSections>   声明了一个叫AppConfig的

浅析Asp.net中的Web.config文件

asp.net|web 一.认识Web.config文件 Web.config文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式),它可以出现在应用程序的每一个目录中.当你通过VB.NET新建一个Web应用程序后,默认情况下会在根目录自动创建一个默认的Web.config文件,包括默认的配置设置,所有的子目录都继承它的配置设置.如果你想修改子目录的配置设置,你可以在该子目录下新建一个Web.config文

ASP.NET学习:认识Web.config文件

asp.net|web  内容来源于网络. 摘要:本文讲述Web.config文件的基本原理及相关设置. 本页内容: 认识Web.config文件 Web.config文件是一个XML文本文件,它用来储存 ASP.NET Web 应用程序的配置信息(如最常用的设置ASP.NET Web 应用程序的身份验证方式),它可以出现在应用程序的每一个目录中.当你通过.NET新建一个Web应用程序后,默认情况下会在根目录自动创建一个默认的Web.config文件,包括默认的配置设置,所有的子目录都继承它的配