Web.config之appsettings的另类使用

来源:互联网 发布:郑爽 倪妮 知乎 编辑:程序博客网 时间:2024/04/29 18:49

一、Web.config和App.config的区别

1.Web.config是Web应用程序的配置文件,App.config是桌面应用程序的配置文件,在.net中,当创建一个桌面应用程序时,会自动创建一个配置文件,它会自动命名为<appname>.exe.config,并且自动与你的程序进行关联;
2.当修改Web.config文件时,应用程序会立即重新加载你的Web.config文件。当修改App.config文件时,必须重新启动应用程序,App.config文件才会生效;

二、Web.config的appsettings配置节

1.appsettings配置节在应用程序开发中经常会使用到,我们可以通过添加一个add来添加一个配置项,如:
<appSettings>     <add key="IsLogged" value="false"/> </appSettings>
2.有时候我们需要通过前台的配置界面来修改配置文件中的appSettings配置节,这在Web应用程序中会产生一些意想不到的问题,因为当你修改了appSettings时,他会立即去重新加载该配置文件,这可能导致应用程序会重新登录。因此,我们可以将appSettings配置节单独放在一个文件中,让该文件和Web.config文件关联,这样在修改appSettings配置节时就不会导致程序去重新加载Web.config;
(1)首先将appSettings配置节单独拿出来放在一个文件中,文件名叫Appsettings.config,如:
<?xml version="1.0" encoding="utf-8" ?> <appSettings>     <add key="IsLogged" value="false"/> </appSettings> 
(2)在Web.config文件中指定和Appsettings.config文件关联,如:
<appSettings configSource="configs/AppSettings.config" />
configs/ 为AppSettings.config文件所在的路径
(3)这样配置之后同样可以通过如下方式来获取配置节中的内容,如:
System.Configuration.ConfigurationSettings.AppSettings["IsLogged"]
0 0