1 回答
TA贡献1744条经验 获得超4个赞
我最终根据https://stackoverflow.com/a/14368486/495455使用计数器创建了一系列模拟
int callCounter = 1;
mockContext.Setup(m => m.Employees)
.Returns(() =>
{
if (callCounter == 1)
{
callCounter++;
return employeeToEditMockCU;
}
else
{
return employeeMockCU;
}
});
在第一次模拟之后,使用 SetupSequence 进行模拟对我不起作用。db.Employee 在第一次调用后变为空。所以我不使用SetupSequence:
mockContext.SetupSequence(x => x.Employees)
.Returns(employeeToEditMockCU)
.Returns(employeeMockCU);
为了解决这个问题,AsNoTracking()我最终获取了要更新的记录并在不使用的情况下保存它EntityState.Modified:
EF Update using EntityState.Modified
- 1 回答
- 0 关注
- 111 浏览
添加回答
举报
