我刚刚安装了Telerik.JustMock.EntityFramework包,我正在尝试它。
我试过这个:
var ctx = EntityFrameworkMock.Create<MyDbContext>().PrepareMock();
var source = new List<MyEntity>()
{
new MyEntity(){ Description = "asd" },
new MyEntity(){ Description = "asd2" },
};
ctx.MyEntities.Bind(source);
当我这样做检索数据时,它可以工作:
ctx.MyEntities.ToList();
但如果我做下一个:
ctx.Set<MyEntity>().ToList();
它返回一个空集合。
你知道我做错了什么吗?或者你知道如何模拟我的上下文返回的集合吗?因为我正在使用存储库模式并且我想测试存储库中的方法,所以它正在使用给定的上下文。
顺便说一句,这是我的MyDbContext类:
public class MyDbContext : DbContext{
public DbSet<MyEntity> MyEntities { get; set; }
}