木子屋 Dnawo's BLOG

类型“System.DBNull”的值无法转换为“String”最好的解决方法

👤 dnawo 📅 2008-04-21 👁 5930 👍 0 💬 0 🔄 本站原创
在应使用String类型的场合中,由于一些客观的原因我们无法保证被使用的值类型总为String,并且很多时候被使用的值类型为DBNull,于是程序(VB.NET)在运行时报错:类型“System.DBNull”的值无法转换为“String”!一个简单例子如下:

Sub Page_Load(ByVal Sender As Object, ByVal E As EventArgs)
    Dim mynull As DBNull
    Response.Write(Message(mynull))
End Sub

Function Message(ByVal name As String) As String
    Return name
End Function

运行出错:类型“System.DBNull”的值无法转换为“String”!

以前在ASP中也存在着类似的问题,解决方法很简单:将null值和""(空字符串)先进行连接一下再对它进行操作!同样的思路:

Sub Page_Load(ByVal Sender As Object, ByVal E As EventArgs)
    Dim mynull As DBNull
    Response.Write(Message(mynull+""))
End Sub

Function Message(ByVal name As String) As String
    Return name
End Function

问题解决!

评论(0)

暂无评论。

计算题
评论需审核通过后显示
← 上一篇 如何禁用ViewState 下一篇 → 什么是套现?什么是信用卡套现?