Entity framework 如何使用Moles来存根实体框架存储过程调用?
我正试图给db打个电话。基本思想是编写一行代码,如下所示:Entity framework 如何使用Moles来存根实体框架存储过程调用?,entity-framework,mocking,pex-and-moles,Entity Framework,Mocking,Pex And Moles,我正试图给db打个电话。基本思想是编写一行代码,如下所示: Person person = (from p in this.Entities.FindPerson("Smith") select p).FirstOrDefault(); 以我想要的方式返回对象,而不转到db。FindPerson(string)表示存储的进程(以防万一) 我试图覆盖FindPerson,但我需要返回ObjectResult。它是一个没有公共构造函数的密封类。我所有创建它的尝试都以打电话给db而告终。我一直在寻找
Person person = (from p in this.Entities.FindPerson("Smith") select p).FirstOrDefault();
以我想要的方式返回对象,而不转到db。FindPerson(string)表示存储的进程(以防万一)
我试图覆盖FindPerson,但我需要返回ObjectResult。它是一个没有公共构造函数的密封类。我所有创建它的尝试都以打电话给db而告终。我一直在寻找同一个问题的答案。以下论坛帖子为我清除了它: 基本上,他们说的不是直接调用EF,而是通过将数据层从业务层抽象出来,使代码可测试 您可以通过存储库模式或类似的方式来实现这一点,然后使用依赖项注入来注入模拟 引用Peli(参与“Pex”计划的微软员工): 鼹鼠应该是最后的选择 解决方案首选的方法是使用 可测试的设计,即抽象 在数据层和业务层之间 图层等 嗯 干杯