字段里没内容时出错,怎么办?

hlt 2004-11-12 02:47:02
我将一个数据表的字段的值付值给一个TEXTBOX,在数据表字段中如果有数据,就会正常显示,如果没数据就会出现下面的 错误,我想要的结果是如果没值在数据字段里,就输入空字符串,但不知如何字现?请帮忙



从类型“DBNull”到类型“String”的强制转换无效。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.InvalidCastException: 从类型“DBNull”到类型“String”的强制转换无效。

源错误:


行 67: ds = GetDataFromDB(sqlstr)
行 68: If Not ds Is Nothing Then
行 69: Me.CT_email.Text = ds.Tables(0).Rows(0)("Email")'就是这里错了


源文件: F:\个人创作\CY128\UserModify.aspx.vb 行: 69

...全文
90 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
活靶子哥哥 2004-11-12
  • 打赏
  • 举报
回复
this.txtLevel.Text = Convert.IsDbNull(reader["M_Level"]) ? String.Empty:reader["M_Level"].ToString();
suntonycomm 2004-11-12
  • 打赏
  • 举报
回复

不用那么复杂吧



c#代码,直接转换成字符串就可以了。

--------------------------------------------------
this.txtLevel.Text = reader["M_Level"].ToString();
lutao206 2004-11-12
  • 打赏
  • 举报
回复
提取数据时: select Isnull(Email, '') as Email from Table

这样就不存在空值了。。。。。。。。。。。。。

或者:
if(ds.Tables[0].Rows["Email"] != System.DBNull.Value;)
Me.CT_email.Text = ds.Tables(0).Rows(0)("Email")'
Eddie005 2004-11-12
  • 打赏
  • 举报
回复
C#的话则需要判断了
Eddie005 2004-11-12
  • 打赏
  • 举报
回复
vb语法好办, Me.CT_email.Text = ds.Tables(0).Rows(0)("Email") & ""
就可以了
liaomu 2004-11-12
  • 打赏
  • 举报
回复
加个判断啊

62,266

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧