Web.config 和 App.config 的区别分析

web.config是web应用程序的配置文件,为web应用程序提供相关配置。在你开发的web程序中,你可以为每一个文件夹建立一个web.config.
app.config是桌面应用程序的配置文件。在vs.net中创建一个桌面应用程序工程并添加了应用程序配置文件时,它会自动命名为<appname>.exe.config,并且自动与你的程序进行关联。

不管是web.config,还是app.config,你都可以使用下面的方法获取appsetting节的值:

System.Configuration.COnfigurationSettings.AppSettings["Key"]

如果你对web.config进行了修改,你的web应用程序将立即加载新的web.config。而当你对app.config进行了修改,必须重新启动桌面应用程序,app.config才能生效。

我在一些资料上找到了以下一些东西,但不能确定两者之间会不会还有其他的不同:

app.config,顾名思义,是桌面应用程序的配置文件,它不能用于Class类库。web.config是ASP.NET应用程序的配置文件。

(ps:Class类库其实可以用读xml的方法读取配置文件,但是貌似不能使用ConfigurationSettings.AppSettings(""))

比如说,在一个拥有web.config的ASP.NET应用程序项目中,包含一个用C#写成的拥有app.config的class类库,那么当这个项目运行的时候,和它关联的配置文件应该是web.config,而不是app.config,因为它是一个ASP.NET应用程序。

相关推荐