资讯   |   开发   |   选机中心   |   产品大全 | IBM | 惠普 | 联想 | 戴尔 | 苹果 | 神舟
更多: | 华硕 | 明基 | 方正 | 紫光 | TCL | 夏新 | 联宝 | 宏碁 | 七喜 | 长城 | 清华同方 | 海尔 | 三星 | 东芝 | 索尼 | 富士通 | LG | 技术 | ddnoon
当前位置:笔记本 > 软件开发 >
Advertisement
文章正文

关于程序集配置文件(App.config)的问题。

类型:转载   责任编辑:asp.net   日期:2007/05/23


热门软件下载:


   

假如我有一个通用的功能性的程序集Utility.dll,它有些需要配置的信息放在App.config中,并由该组件自身通过.Net框架提供的ConfigurationSettings.GetConfig()方法读取配置信息,以实现运行时配置。  
  现在问题如下:  
  若使用Utility.dll的宿主程序是一个独立的exe程序,如HostA.exe,我就得把对Utility.dll的配置信息文件App.config具体命名为HostA.exe.config,否则Utility.dll中读取不到配置信息。  
  若使用Utility.dll的宿主程序变成另一个独立的exe程序,如HostB.exe,我就得把对Utility.dll的配置信息文件App.config具体命名为HostB.exe.config,否则Utility.dll中读取不到配置信息。  
  请问,有没有办法在运行不同的宿主程序时使用同样的配置文件,如Utility.dll.config。请注意,有此需求的主要原因是我在Utility.dll中使用了框架提供的ConfigurationSettings.GetConfig()方法读取配置信息,而不想自己写分析程序读取自定义的配置文件(如指定一个配置文件名,始终在Utility.dll读取它,分析它。可以说我懒吧。   有好东西干吗不用呢?!)  
  另请注意,我在使用NUnit测试Utility.dll时,若测试程序集为TestUtility.dll,配置文件就得命名为TestUtility.dll.config,而非nunit-gui.exe.config(nunit-gui.exe为NUnit的主程序。)。我不知道如何为框架指定读取哪个配置文件,好像同当前的AppDomain有关。  
  请各位指教!谢谢!  
  btw:我不接受将配置信息写入machine.config的方案。  
 

网友回答:

发表者:sunyou

你把Utility.dll使用的App.config文件中的<appSettings>节中的内容添加到宿主程序的App.config的同一位置就可以了

发表者:ag1978

楼上说的实现没错;  
  不过实现程序默认值,当配置文件中不存在相关内容时,自动写入默认值,这样就可以了,不一定要手动添加的。

发表者:haoztao

你把Utility.dll使用的App.config文件中的<appSettings>节中的内容添加到宿主程序的App.config的同一位置就可以了  
  就是这样的

发表者:lql9935

其实我问题的重点是,我想弄清楚.Net框架的ConfigurationSettings.GetConfig()的执行机理,即框架是如何加载配置信息文件的。  
  请注意NUnit的执行效果   !!  
  请各位继续赐教。  
 


 

 
热门推荐笔记本: 顶星笔记本
相关文章:
webmaster:popbb@126.com   最佳浏览:1024X768 MSIE
©2007 popbb.net All Rights Reserved