我正在做一个单元测试项目来测试控制器中的读取方法。我试图模拟存储库,但我遇到了问题。
有一个App Repository包含所有存储库。和另一个用户存储库:
var repositoriesMock = new Mock<IAppRepositories>();
var userMock = new Mock<UserRepository> ();
repositoriesMock.SetupGet(x => x.Users).Returns(
partnerMock.Object
);
userMock.SetupGet(x => x.GetUserDto(false, 1) ).Returns(
new List<GeschaeftspartnerDto> {user1, user2}.AsQueryable()
);
在控制器中:
public ActionResult Read([DataSourceRequest] DataSourceRequest request)
{
var list = this.AppRepositories.Users.GetUserDto(false, 1).ToList();
}
但是我在uerMock.SetupGet
中收到错误表达式不是属性访问权限:x =&gt; x.GetUserDto(False,1)
发生了什么事?为什么我会收到此错误?
答案 0 :(得分:1)
尝试使用Mock.Setup而不是Mock.SetupGet。