中易网

c#dataread 读取数据库decimal类型的字段值

答案:2  悬赏:0  
解决时间 2021-04-27 20:07
  • 提问者网友:挣扎重来
  • 2021-04-27 08:03

if (sqlread.Read())
                {
                    labKH.Text = sqlread["KH"].ToString();
                    labXM.Text = sqlread["XM"].ToString();
                    labLX.Text = sqlread["LX"].ToString();
                    labJB.Text = sqlread["JB"].ToString();
                    labJF.Text = sqlread["JF"].ToString();
                    labXFJE.Text = sqlread["XFJE"].ToString();
                    labXFCS.Text = sqlread["XFCS"].ToString();
                    labZT.Text = sqlread["ZT"].ToString();

 

                }

 labXFJE.Text = sqlread["XFJE"].ToString();这句是错误的XFJE在数据库中的类型是decimal

labXFCS.Text = sqlread["XFCS"].ToString();这句也是错误的XFCS在数据库中的类型是float

请问那两句要怎么改过来了

最佳答案
  • 二级知识专家网友:晚安听书人
  • 2021-04-27 08:31

labXFJE.Text = sqlread["XFJE"].ToString();


labXFCS.Text = sqlread["XFCS"].ToString();


 这2句不该报错,如果报错应该是数据库中字段为空,发生了空引用错误。


改为如下即可:


labXFJE.Text = sqlread["XFJE"]??sqlread["XFJE"].ToString();


labXFCS.Text = sqlread["XFCS"]??sqlread["XFCS"].ToString();


全部回答
  • 1楼网友:樣嘚尐年
  • 2021-04-27 08:59

强制类型转换就可以了

labXFJE.Text = decimal.Parse(sqlread["XFJE"].ToString());这句是错误的XFJE在数据库中的类型是decimal

labXFCS.Text = float.Parse(sqlread["XFCS"].ToString());这句也是错误的XFCS在数据库中的类型是float

我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息!
大家都在看
推荐信息