在MSTest单元测试中找不到EF连接字符串

时间:2011-01-01 19:39:13

标签: wpf unit-testing entity-framework mstest

我正在使用EF4构建一个新应用程序。 EF代码与存储库代码一起位于自己的程序集中。我正在尝试使用Visual Studio的MSTest进行一些单元测试,但是我很难入门。我的代码是 -

string s = "metadata=res://*/DataModels.MonitorUrlEf.csdl|res://*/DataModels.MonitorUrlEf.ssdl|res://*/DataModels.MonitorUrlEf.msl;provider=System.Data.SqlClient;provider connection string=\"Data Source=TOM-VAIO;Initial Catalog=WebMonDb4;Integrated Security=True;Pooling=False;MultipleActiveResultSets=True\"";  
var DbContext = new WebMonDb4Entities(s);

WebMonDb4Entities是由EF设计者创建的EF上下文。我将连接字符串放在变量中,所以我不必处理测试期间连接文件的位置问题。字符串的内容将从EF设计器代码所在的项目中的app.config文件中复制。

错误是“无法加载指定的元数据资源。”我做了一些研究,这应该有效。有什么建议吗?

2 个答案:

答案 0 :(得分:1)

看起来您的问题可能会通过向EDMX引用添加完全限定的命名空间来解决,如文档here所述。 : - )

答案 1 :(得分:0)

您可以为单元测试项目添加/复制工作配置文件。或者在其中复制/创建连接字符串元素。

从一些研究中我发现最好创建EntityConnection的实例并使用它。

同时在同一主题上查看一些discussion

相关问题