【IT168技术文档】

一、ConfigurationManager.OpenExeConfiguration的问题 
  ConfigurationManager.OpenExeConfiguration有两个重载, 
  ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.PerUserRoamingAndLocal)和ConfigurationManager.OpenExeConfiguration(Server.MapPath("web.config"));

经过实验我发现,在网上上,ConfigurationManager.OpenExeConfiguration (ConfigurationUserLevel.PerUserRoamingAndLocal)不能使用,而Configuration和 ConfigurationManager.OpenExeConfiguration其实不能直接对文件进行修改。

     Configuration cfg = ConfigurationManager.OpenExeConfiguration(Server.MapPath("web.config"));
Response.Write(cfg.FilePath);

你会发现以上代码输出的FilePath是F:\路径\Web\web.config.config 。打开的文件虽然看的是web.config,其实是另外一个文件web.config.config,虽然web.config.config并不存在。

而进行以下操作

 Configuration cfg = ConfigurationManager.OpenExeConfiguration(Server.MapPath("web.config"));
cfg.AppSettings.Settings.Remove("123");
cfg.AppSettings.Settings.Add("123","asdasd");
cfg.Save();

读不出web.config的内容,而实际上是读的web.config.config的内容。我们现在没这个文件,那么内容就是空的。保存之后,得到

<?xml version="1.0" encoding="utf-8"?><configuration><appSettings><add key="123" value="asdasd"/></appSettings></configuration>

二、引出来的思路 
  可以建立个文件web.config.config,作为web.config的副本。 
  再次执行

        Configuration cfg = ConfigurationManager.OpenExeConfiguration(Server.MapPath("web.config"));
cfg.AppSettings.Settings.Remove("123");
cfg.AppSettings.Settings.Add("123","asdasd");
Response.Write(cfg.FilePath);
cfg.SaveAs(Server.MapPath("web.config"));

操作,则确实实现了对文件的修改。

【原地址】:http://tech.sina.com.cn/s/2008-06-30/1013712947.shtml

转载于:https://www.cnblogs.com/yongtaiyu/p/3594182.html

Configuration类在网页实现对web.config的修改[转]相关推荐

  1. VS2005 ASP.NET2.0安装项目的制作(包括数据库创建、站点创建、IIS属性修改、Web.Config文件修改)

    站点: 如果新建默认的Web安装项目,那它将创建的默认网站下的一个虚拟应用程序目录而不是一个新的站点.故我们只有创建新的安装项目,而不是Web安装项目.然后通过安装类进行自定义操作,创建新站如下图: ...

  2. java poi读取word中附件_java用poi实现对word读取和修改操作

    java编程要实现对word的操作没有vb那种编程语言来得容易,得借助一些开源组件,其中就包括jacob.poi等, 而poi应用得最为广泛,对word2003和2007的读和写word操作都十分方便 ...

  3. java用poi实现对word读取和修改操作

    java编程要实现对word的操作没有vb那种编程语言来得容易,得借助一些开源组件,其中就包括jacob.poi等, 而poi应用得最为广泛,对word2003和2007的读和写word操作都十分方便 ...

  4. nginx两台文件服务器集群,keepalived结合nginx状态检测脚本实现对web服务器集群的高可用...

    实验环境 两台CentOS-7.5虚拟机 web1:10.0.11.203 web2:10.0.11.204 VIP :10.0.11.210 web类型:nginx 客户端:自用笔记本(win10) ...

  5. 利用qemu-guest-agent软件实现对KVM虚拟机密码修改

    当使用KVM虚拟化环境或openstack环境(hypervios层用KVM实现)的虚拟机,很有可能会出现长时间不登录遗忘密码这种很尴尬的情况,以往根据这种情况,往往linux通过单用户模式,wind ...

  6. 轻松实现对pdf文件编辑修改

    虽然pdf文件现在应用的比较多,但还是有很多人对这种文件不太了解,当要对pdf文件进行编辑修改时也不知道该怎么去操作.其实pdf文件的编辑也是很简单的,就和普通的文档一样.下面就来讲下pdf文件怎么编 ...

  7. 在web.config中添加配置信息

    1 在web.config中添加配置信息<configuration><connectionStrings><add name="conStr" co ...

  8. 在Windows和Azure中使用加密证书提高web.config的安全性

    \ 本文要点 \\ 加密证书可限制具有机密访问权限的人数.\\t 加密证书本身并不会降低对稳健性和多层安全计划的需求.\\t pfx解密密钥文件必须存储在一个安全的离线位置,并与密码分开存储.\\t ...

  9. (转)asp.net夜话之十一:web.config详解

    在开发中经常会遇到这样的情况,在部署程序时为了保密起见并不将源代码随项目一同发布,而我们开发时的环境与部署环境可能不一致(比如数据库不一样),如果在代码中保存这些配置这些信息部署时需要到用户那里更改代 ...

最新文章

  1. 华为副总裁因家庭原因提出辞职…… 任正非:你可以离婚啊!
  2. Cisco热备份路由协议(HSRP) 2
  3. 拦截器Intercepter和过滤器Filter的比较
  4. 9读书1-我在义务发财(1)
  5. Could NOT find XXX (missing: XXX_LIBRARY XXX_DIR)
  6. js 即时上传php_php+js实现异步图片上传实例分享
  7. PHP -- Traits新特性
  8. (最完美)小米手机5s的USB调试模式在哪里打开的方法
  9. pytorch实战从入门到精通第二部分——卷积神经网络
  10. FoxMail 查看邮件乱码
  11. python 写配置文件,python配置文件写入过程详解
  12. java中bool_java中boolean用法
  13. 抽签小程序,妈妈再也不用担心谁洗碗(分配任务)了,so easy
  14. 如何写数学建模竞赛论文
  15. Word文件标尺工具被隐藏,怎么恢复
  16. pythonlinux安装 pandas_linux pandas安装
  17. Others13_在黑市里,苹果iPhone是这样被解锁的
  18. 经常使用的2个google镜像网站
  19. Codeforces 1146G Zoning Restrictions dp
  20. 服务器固态硬盘当作系统盘,只当系统盘太屈才,这些地方都能用上固态硬盘!...

热门文章

  1. .NET Core微服务系列基础文章索引(目录导航Final版)
  2. Laravel提交POST请求报错
  3. linux: convmv =-======pkgs.org
  4. unix cut命令
  5. web移动开发最佳实践之js篇
  6. 用Nginx如何配置运行无扩展名PHP文件或非.PHP扩展名文件
  7. 一步一步SharePoint 2007之二十三:编写一个最简单的WebPart(1)——创建工程
  8. 基于Kubernetes构建Docker集群管理详解
  9. JS String类型整理
  10. 5.30 Tree Traversal + Tree manipulation