将SQL Server BIT数据类型转换为布尔VB.NET



我的VB有点生疏了。. NET,特别是转换为SQL时。我认为我有一个隐藏2个按钮的简单任务,除非复选框被选中。该复选框绑定到数据类型为bit的SQL Server列。

我的代码如下:
Private Sub CaseVehicleCollisionCheckBox1_CheckedChanged(sender As Object, e As EventArgs) Handles CaseVehicleCollisionCheckBox1.CheckedChanged
    Dim collision As System.Data.SqlTypes.SqlBinary
    collision = CaseVehicleCollisionCheckBox1
    If collision = True Then
        btnVehicle1.Visible = True
        btnVehicle2.Visible = True
    ElseIf collision = False Then
        btnVehicle1.Visible = False
        btnVehicle2.Visible = False
    End If
End Sub

我一直得到错误

"System.Windows.Forms"类型的值。CheckBox'无法转换为'System.Data.SqlTypes.SqlBinary'

当尝试将复选框赋值给变量时。

我得到同样的错误时,试图使用System.Data.SqlTypes.SqlBoolean

问题是您正在将CheckBox控件转换为SQLBinary数据类型,并且这不会工作。

我假定CaseVehicleCollisionCheckBox1是复选框的名称。您需要使用CheckBoxes Checked property,例如:

Dim collision As Boolean
collision = CaseVehicleCollisionCheckBox1.Checked

使用SqlBoolean代替sqlBinary。sqlBinary在sql中相当于一个字节数组。

最新更新