嘿伙计们,我似乎无法想出这个。有什么想法吗?
在我的项目中,我试图使用EF6作为CRUD的方法。当我为数据访问部分进行单元测试时,我正在删除SQL Server紧凑型数据库并从头开始创建它以确保干净的测试。我使用以下代码。
[SetUp]
public void Setup()
{
//instantiate the test db that we will use to run persistence testing.
Database.DefaultConnectionFactory = new SqlCeConnectionFactory("System.Data.SqlServerCe.4.0");
context = new RTBComicsDataContext(GetTestDbName());
context.Database.Delete();
context.Database.Create();
}
上面看到的测试DB名称函数返回以下内容:
"Data Source=" +(System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().Location)) + @"\\RTB.Data.Tests.Db.sdf;Persist Security Info=False";
这会在调用时生成无效的操作异常,我不太清楚为什么。
内部异常消息:Sequence不包含匹配元素
答案 0 :(得分:0)
我至少弄清楚如何解决我的问题。这似乎与将测试保存到本地计算机上的sql server CE数据库有关。
如果我在ACTUAL sql server实例上指向此函数,它可以正常工作。