如何创建条件以检查vb中的数据表项是否为null

时间:2016-05-13 07:19:58

标签: vb.net dbnull

现在我想要dt.rows(i).item(0)为空,然后是一些代码..

这是我的代码:

If dtpay.Rows(i).Item(23).ToString Is Nothing Then
  GoTo finalline
End If

但似乎代码不起作用.. 非常感谢您的关注:D

5 个答案:

答案 0 :(得分:2)

您可以使用GetType()检查DBNull中的对象是否为VB.Net

If dtpay.Rows(i).Item(23).GetType() Is GetType(DBNull) Then
    'Do something
End If

话虽如此,上面代码中的DBNull也可能出现在dtpay.Rows(i)中。因此,还要检查DBNull发生的位置。

答案 1 :(得分:0)

没有什么和Null不一样。 没有返回字段类型的默认值(0表示数字,“”表示文本,...)

    If IsDBNull(dtpay.Rows(i).Item(23)) Then
        GoTo finalline
    End If

答案 2 :(得分:0)

您应该使用DataRow.IsNull

<android.support.v7.widget.CardView
    android:id="@+id/cardView"
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:card_view="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_margin="2dp"
    card_view:cardBackgroundColor="#fff"
    card_view:cardCornerRadius="3dp"
    card_view:cardElevation="2dp"
    card_view:cardUseCompatPadding="true"
    >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="vertical"
        >
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center_horizontal"
            android:text="Check in"/>

        <TextView
            android:id="@+id/txtCheckInTime"
            style="@style/Base.TextAppearance.AppCompat.Subhead"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:gravity="center_horizontal"
            android:text="9:20AM"/>

        <View

            android:id="@+id/viewStatus"
            android:layout_width="match_parent"
            android:layout_height="10dp"
            android:background="@color/clrPresent"
            />


    </LinearLayout>
</android.support.v7.widget.CardView>

如果它是值类型(例如If dtpay.Rows(i).IsNull(23) Then ' ..... ' End If ),您可以使用Integer - 扩展方法Field

DataRow

答案 3 :(得分:0)

尝试:

If dtpay.Rows(i).Item(23) Is Nothing Then
  GoTo finalline
End If

答案 4 :(得分:0)

如果dt.Rows(i).Item(23)Nothing OrElse dt.Rows(i).Item(23).ToString =&#34;&#34; OrElse dt.Rows(i).Item(23)= vbNull然后 GoTo finalline 结束如果