我正在使用EF6的Model First方法,我正在尝试使用Entity Framework Effort来开发内存中的测试。
这是我在测试中所做的事情:
var inMemoryConnection = Effort.DbConnectionFactory.CreateTransient("name=MyEntities");
var inMemoryContext = new MyEntities(inMemoryConnection);
MyEntities:
public partial class MyEntities: DbContext
{
public MyEntities(DbConnection dbConnection)
: base(dbConnection, contextOwnsConnection: true)
{
}
当我运行测试时,我收到一个错误,说我没有指定任何[key]属性,这是正常的,因为我没有使用Code First方法。因此,OnModelCreating方法被调用,不应该被调用。
有没有办法在Model First设计中使用Effort而无需添加这些属性?
谢谢 !
我发现了自己的错误。
结果是Effort.DbConnectionFactory.CreateTransient用于Code-First。
相反,如果你正在使用.edmx,Model-First,那就是努力。您必须使用的实体 ConnectionFactory.CreateTransient(“name = MyEntities”)。