C#/ASP.NET應用程序配置文件app.config/web.config的增、刪、改操作


應用程序配置文件,對於asp.net是 web.config,對於WINFORM程序是 App.Config(ExeName.exe.config)。

配置文件,對於程序本身來說,就是基礎和依據,其本質是一個xml文件,對於配置文件的操作,從.NET 2.0 開始,就非常方便了,提供了 System [.Web] .Configuration 這個管理功能的NameSpace,要使用它,需要添加對 System.configuration.dll的引用。

對於WINFORM程序,使用 System.Configuration.ConfigurationManager;

對於ASP.NET 程序, 使用 System.Web.Configuration.WebConfigurationManager;

對於配置文件內容的讀取,真是太普遍不過了,如果你的程序里,沒有讀取配置文件內容的方面,你都不好意思拿出來用

我們以最常見的 AppSettings 小節來作為例子:

假設有如下的配置文件內容:

<?xml version="1.0" encoding="utf-8" ?>

<configuration>

  <appSettings>

    <add key="y" value="this is Y"/>

  </appSettings>

</configuration>

1. 讀取值:

  • Asp.Net:   System.Web.Configuration.WebConfigurationManager.AppSettings[“y”];
  • WinForm:  System.Configuration.ConfigurationManager.AppSettings[“y”];

2. 添加一項

  • ASP.NET(需要有寫權限):

Configuration config = WebConfigurationManager.OpenWebConfiguration(null);

AppSettingsSection app = config.AppSettings;

app.Settings.Add("x", "this is X");

config.Save(ConfigurationSaveMode.Modified);

  • WinForm:

Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

AppSettingsSection app = config.AppSettings;

app.Settings.Add("x", "this is X");

config.Save(ConfigurationSaveMode.Modified);

3. 修改一項

  • Asp.Net

Configuration config = WebConfigurationManager.OpenWebConfiguration(null);

AppSettingsSection app = config.AppSettings;

//app.Settings.Add("x", "this is X");

app.Settings["x"].Value = "this is not Y";

config.Save(ConfigurationSaveMode.Modified);

  • WinForm

Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

AppSettingsSection app = config.AppSettings;

//app.Settings.Add("x", "this is X");

app.Settings["x"].Value = "this is not Y";

config.Save(ConfigurationSaveMode.Modified);

4. 刪除一項

  • Asp.Net

Configuration config = WebConfigurationManager.OpenWebConfiguration(null);

AppSettingsSection app = config.AppSettings;

app.Settings.Remove("x");

config.Save(ConfigurationSaveMode.Modified);

  • WinForm

Configuration config = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);

AppSettingsSection app = config.AppSettings;

app.Settings.Remove("x");

config.Save(ConfigurationSaveMode.Modified);

說明:需要注意的是,代碼所修改的並不是app.config,而是[Application_Name].exe.config這個文件。其中Application_Name就是你的可執行文件的文件名,而[Application_Name].exe.config才是真正起作用的配置文件。至於app.config,把它理解為是初始化配置文件比較合適。對於winfom在vs調試下app.config無變化是正常的,bin里面生成的程序,運行可看到效果。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM