.Net Core Moq:表达式树可能不包含使用可选参数的调用或调用

.Net Core Moq: An expression tree may not contain a call or invocation that uses optional arguments

使用 .net 核心 xunit 和最小起订量。

在编写测试用例时出现错误

An expression tree may not contain a call or invocation that uses optional arguments    

错误在线:

var moqDb = new Mock<IDynamoDbClientInitialization>();
moqDb
 .Setup(_ => _.GetContext().ScanAsync<MyModel>
 (It.IsAny<List<ScanCondition>>(), AWSHelperMethods.GetDynamoDbOperationConfig(dynamoDbTable)).GetRemainingAsync())
.ReturnsAsync(data);

有关此代码的完整代码,请参阅 post,网址为:

谁能帮我解决这里的错误。

这个post是为了解决我得到的错误,而不是要求写单位大小写

moqDb 是 Mock 的实例:

moqDb
 .Setup(_ => _.GetContext().ScanAsync<MyModel>

在这部分代码中,您尝试 "call" 尚未设置 GetContext() 的 ScanAsync 方法。要解决此问题,您必须在尝试设置 ScanAsync()

之前设置 GetContext() 的 return 值