我使用 Moq 创建数据集的模拟。
我创建了一个小助手类,它允许我拥有一个内存存储而不是一个使单元测试变得轻而易举的数据库。这样我就可以从我的模拟数据集中添加和删除项目,这允许我测试我的插入和删除服务调用。
在模拟的设置过程中,我有一条如下所示的线
this.Setup(i => i.AcademicCycles).Returns(mockStore.GetList<AcademicCycle>());
我的模拟有很多属性,所以我想使用反射来执行这个设置步骤。我已经设法Returns
通过反射完成了该过程的一部分,但我被困在 lambda 方法上Setup
。
Setup
需要一个
Expression<Func<GoalsModelUnitOfWork, IQueryable<AcademicCycle>>>
对应于i => i.AcademicCycles
我想动态创建它。使用反射我有以下内容:
物业名称:“AcademicCycles”
类型IQueryable<AcademicCycle>
类型AcademicCycle
我也有i
lambda 语句中的实例,它是GoalsModelUnitOfWork