2013-10-28 154 views
0

我有SQL2008R2,它的數據類型爲「位」,其默認值爲「0」。我有一個表格上是或否的選項按鈕(VS2012),默認情況下選擇「否」。當我嘗試將值插入表中時,我得到了這個愚蠢的「對象引用未設置爲對象的實例」。這是我內部的「嘗試,捕捉,結束嘗試」塊的按鈕。錯誤Vb.Net - 對象參考

Dim strPolice As String 
strPolice = optPolice.SelectedValue.Trim() 
If strPolice IsNot Nothing Then 
PoliceDetailDS.InsertParameters("Police_Informed").DefaultValue = strPolice 
End If 

回答

1

我想這是optPolice.SelectedValueNothing,因此那裏有什麼選擇。

If optPolice.SelectedValue IsNot Nothing Then 
    Dim strPolice = optPolice.SelectedValue.Trim() 
    PoliceDetailDS.InsertParameters("Police_Informed").DefaultValue = strPolice 
End If 
+0

也可能是'PoliceDetailDS.InsertParameters(「Police_Informed」)'是什麼......?不應該通過調試來要求縮小可能性嗎? – pseudocoder

+0

@pseudocoder:是的,調試器在這種情況下工作奇蹟;) –

+0

我試了兩次,並得到相同的NullReferenceException錯誤。隨着中斷點我可以看到strPolice的值是「True」。 – Nita

0
If optPolice.SelectedValue IsNot Nothing Then 
    PoliceDetailDS.InsertParameters("Police_Informed").DefaultValue = optPolice.SelectedValue.Trim() 
End If 
0

確定這就是我所做的。我重新配置了數據源並選擇了*而不是每個字段。然後改變這種方式的代碼。

If optPolice.SelectedValue = "Yes" Then 
    PoliceDetailDS.InsertParameters("Police_Informed").DefaultValue = True 
Else 
    PoliceDetailDS.InsertParameters("Police_Informed").DefaultValue = False 
End If 

非常感謝您的幫助。

+1

不幸的是,我不認爲這會告訴未來的讀者很多關於原始問題是什麼或爲什麼你的解決方案工作。 – pseudocoder

+0

我不完全確定。由於數據類型是布爾值,因此使用True值。 – Nita

+0

我的猜測是我沒有在插入語句中指定「Police_Informed」字段。愚蠢的錯誤。 – Nita