2015-08-25 48 views
1

我試圖做的嘲笑對象的簡單Setup,但我總是得到NullRefernceException從設置行未來:NullRefernceException打電話時設置

enter image description here

是什麼,我在這裏做了錯誤?

+0

在它的當前形式,你的問題是非常有益的,因爲這是很難尋找。請將您的問題描述包含在書面文本中,而不僅僅是錯誤的屏幕截圖,並嘗試將源代碼包含爲文本。我試圖在你的問題中包含這些細節。如果你不喜歡我編輯你的問題的方式,可以隨意擴展它或回滾。 – nemesv

回答

2

您的設置不正確,因爲您將Moq與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(); 
} 
+0

非常感謝,先生,它現在正在工作:) –

+0

完成先生我已經標記爲答案 –