Assembly的App.Config被忽略了; 正在读取Machine.config

p.c*_*ell 0 c# configuration unit-testing app-config visual-studio

在针对我的DAL 运行VS2008 单元集成测试时,我发现程序集正在读取machine.config而不是程序集app.config.

这是调用堆栈的纲要:

  • 单元测试项目具有调用DataLayer项目的方法
  • MyDataLayerclass继承自基类.调用方法GetStuff()
  • 基类正在使用System.Configuration.都好.
  • 在代码中调用此属性:ConfigurationManager.ConnectionStrings["MyConnStr"]实际上返回null,因为它显然没有找到.
  • 检查 MyDataLayer班级,是的,MyConnStr就在那里.
  • 检查集合ConnectionStrings,是的,它有一个连接字符串.它是machine.config中的那个C:\Windows\Microsoft.NET\Framework\v2.0.50727\Config\machine.config
  • 我不确定为什么我的DAL app.config被它取代了machine.config

任何帮助表示赞赏!

Ray*_*Ray 5

不确定这是否适用于您,但您需要确保配置字符串位于Unit Test Project的app.config中,而不是DataLayer项目中.