c#读取.config文件内容

今天在做项目的时候,由于程序同时启动多种情况的数据,测试分为多个人,就需要把数据分离开来,于是用了一个临时的配置文件,让测试在配置文件修改相应数据从而让各个测试互相不影响!

步骤:

第一步:添加一个App.config文件,文件格式如下:

<?xml version="1.0" encoding="utf-8" ?>
  <configuration>
    <appSettings>
    <add key="canshu" value="HKG999$sha777!1002*1003#sha888!0001*0002"/>
  </appSettings>
</configuration>

这是我测试时候使用的一个例子!

第二歩:将文件添加在了项目中。

最开始我使用的是这种方法来读取:

string ceshi =ConfigurationManager.AppSettings["canshu"];

 

注意:需要在资源管理器的引用里面,添加System.Configuration,然后再在代码中添加 using System.Configuration;

 

现在问题来了,如果你的这个App.config的配置文件没有在你的启动项的目录下面,这样就拿不到你想要的数据,返回一个null。

解决办法:(获取绝对路径下面的配置文件数据)

下面这种方法使用性比较好一些:

 

ExeConfigurationFileMap map = new ExeConfigurationFileMap();
map.ExeConfigFilename =AppDomain.CurrentDomain.SetupInformation.ApplicationBase.TrimEnd('\\') + "\\App.config";   ////(引号里面的是你的配置文件的在程序的绝对路径)。
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(map, ConfigurationUserLevel.None);
string ceshi = config.AppSettings.Settings["canshu"].Value;

这样的方式就获取到了想要的数据!希望遇到同样问题的跟我一样的初学者能得到帮助!

 

posted @ 2016-03-18 15:37  明&天  阅读(7011)  评论(0编辑  收藏  举报