NUnit和App.config

时间:2011-03-25 09:37:04

标签: c# database entity-framework tdd nunit

我尝试测试我的Entity类,但我总是遇到失败:

  

System.Data.MetadataException
  无法加载指定的元数据资源。

我认为问题出在连接字符串和App.config中。我尝试了很多东西:添加一些东西来构建事件,更改配置名称,将配置文件复制到解决方案文件夹,项目文件夹,project_folder / bin / debug,再次更改很多名称......但它仍然不起作用

我有一个包含3个项目的“AppProject”解决方案:

  • “实体”
  • “WebTest的”
  • “MVCApp”

Entity项目有一个.edmx文件和简单的POCO类。当我将Entity/App.config中的连接字符串添加到MVCApp/Web.config时,“MVCApp”和数据库工作正常。

当我将Entity/App.config复制到WebTest/App.config时,它无效。我不知道问题出在哪里。

我使用的是Visual NUnit,但是当我尝试在NUnit中打开时仍然无效。

我的App.config

<connectionStrings>
  <add name="UserDB"
       connectionString="metadata=res://*/Model.Entity.csdl|
                                  res://*/Model.Entity.ssdl|
                                  res://*/Model.Entity.msl;
                         provider=System.Data.SqlClient;
                         provider connection string=
                                  &quot;Data Source=.\SQLExpress;
                                  Initial Catalog=TestDB;
                                  Integrated Security=True;
                                  MultipleActiveResultSets=True&quot;"
       providerName="System.Data.EntityClient" />
  <!-- NOTE: line breaks in the above connection string have been inserted only
             for better legibility. -->
</connectionStrings>

2 个答案:

答案 0 :(得分:1)

查看我的回答nunit and configs 您需要告诉nunit配置文件的名称是什么。它默认查找namespace.config接缝

答案 1 :(得分:0)

运行webtest,查看任务管理器中运行的处理器。我的是QTAgent32_40,通常在C:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ Common7 \ IDE下转到配置文件。查找名为“QTAgent32_40.exe.config”的配置文件。使用记事本编辑它并将连接字符串复制粘贴到那里。这对我有用。