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 關注
- 92 瀏覽
添加回答
舉報