我正在创建一个调用创建任务方法的单元测试.create task方法调用一些模拟的外部对象,这是我测试的目的,但在我测试的方法中,还有一个SaveChanges保存我的任务的调用.我想要做的是在DbContext内部填充类,System.Data.Entity以便该SaveChanges方法不再访问数据库.
我添加了一个假装配,System.Data.Entity但是当我使用System.Data.Entity.Fakes它说"无法解析符号'Fakes'",虽然我可以访问System.Data.Fakes(但我没有为System.Data添加假装配)
我在我的实体上下文中伪造了其他方法,但我不能在我的实体上伪造SaveChanges方法,因为该方法是从DbContext继承的.
ShimDBEntities.AllInstances.SaveChanges = (x) => { ... };
Run Code Online (Sandbox Code Playgroud)
上面的代码块说"无法解析符号'SaveChanges'".
那么如何使用Microsoft Fakes来填充DbContext呢?