调用安装程序时出现 NullRefernceException
NullRefernceException when calling Setup
我试图在模拟对象上做一个简单的 Setup
,但我总是从设置行得到一个 NullRefernceException
:
我在这里做错了什么?
您的设置不正确,因为您将起订量与 It.IsAny<string>().ToString()
中的 .ToString()
混淆了。
因此 Moq 无法生成正确的匹配器并抛出异常。
解决这个问题很容易,只需删除 .ToString()
:
[Test]
public void Test()
{
mockDatabase = new Mock<IDatabase>();
DataSet ds = new DataSet();
mockDatabase.Setup(m => m.DbQuery(It.IsAny<string>())).Returns(ds);
var sut = new BusinessClass(mockDatabase.Object);
sut.SomeMethod();
}
我试图在模拟对象上做一个简单的 Setup
,但我总是从设置行得到一个 NullRefernceException
:
我在这里做错了什么?
您的设置不正确,因为您将起订量与 It.IsAny<string>().ToString()
中的 .ToString()
混淆了。
因此 Moq 无法生成正确的匹配器并抛出异常。
解决这个问题很容易,只需删除 .ToString()
:
[Test]
public void Test()
{
mockDatabase = new Mock<IDatabase>();
DataSet ds = new DataSet();
mockDatabase.Setup(m => m.DbQuery(It.IsAny<string>())).Returns(ds);
var sut = new BusinessClass(mockDatabase.Object);
sut.SomeMethod();
}