我正在使用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文件中复制。
错误是“无法加载指定的元数据资源。”我做了一些研究,这应该有效。有什么建议吗?
答案 0 :(得分:1)
看起来您的问题可能会通过向EDMX引用添加完全限定的命名空间来解决,如文档here所述。 : - )
答案 1 :(得分:0)
您可以为单元测试项目添加/复制工作配置文件。或者在其中复制/创建连接字符串元素。
从一些研究中我发现最好创建EntityConnection的实例并使用它。
同时在同一主题上查看一些discussion。