【发布时间】:2012-08-03 14:00:57
【问题描述】:
我有以下 ASP.NET (VB) 代码:
strLocation = CStr(q1("LocationName")) + " " + CStr(q1("LocationAddress")) + " " + CStr(q1("LocationCity"))
由于 LocationCity 为空:
从“DBNull”类型到“String”类型的转换无效。
有没有办法解决这个问题。
如果只是 LocationCity,我可能会这样做:
If IsDBNull(q1("LocationCity")) Then
strLocation = ""
Else
strLocation = CStr(q1("LocationCity"))
End If
我也试过了:
strLocation = If(CStr(q1("LocationName")), "") + " " + If(CStr(q1("LocationAddress")), "") + " " + If(CStr(q1("LocationCity")), "")
但得到了相同的结果
在 C# 中,我通常会使用 ??但不确定 ASP.NET VB 中的最佳方法
【问题讨论】:
-
发生了什么?您是否正在执行 if 语句中的另一条语句并抛出异常?调试器告诉你什么?如果你检查它真的是dbnull吗?您使用的是哪个数据库和提供商?