gpt4 book ai didi

asp.net - 如何在VB中正确检查DBNull?

转载 作者:行者123 更新时间:2023-12-02 09:30:45 25 4
gpt4 key购买 nike

为什么下面的代码是这样的:

  A = not IsDBNull(CurRow("BuyBook")) AndAlso CType(CurRow("BuyBook"), string) = "Yes"

导致以下错误:

 Conversion from type 'DBNull' to type 'String' is not valid.

根据本文,当 AndAlso 应该短路时:

http://support.microsoft.com/kb/817250

最佳答案

你是对的。 AndAlso 是短路。

但是,错误是通过调用 CurRow("GuyBook") 来实现的(在调试器中验证这一点,以确保我不是骗子或做出一些疯狂的假设或者只是记错了*;-)。在请求值之前,您需要询问 DataRow if it has a value 。也就是说,使用:

CurRow.IsNull("BuyBook")

祝你编码愉快。

<小时/>

*一个应该只能与DBNull.Value进行比较或使用IsDBNull。但是,我相当确定在引发这些异常而不是返回 DBNull 对象之前我遇到了一行。首先在调试器的立即窗口中找出哪个表达式抛出异常。

关于asp.net - 如何在VB中正确检查DBNull?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8847114/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com