C#中。DataTable.Rows[i]["name"].ToString();如果name为空或null。这样tostring()会不会报错呢?
11个回答
展开全部
会报错。
如果name为null,那么null.ToString()一定会报错,因为null没有任何方法,要解决这个问题,只需要将:
ToString()方法改为Convert.ToString(DatTable.Rows[i]["name"])。
如果没有值,那么会获得一个null,Convert.ToString()比ToString()更安全。
扩展资料:
注意事项
Null表示不引用任何对象的空引用,不存在此字段。
Convert.IsDBNull() 可以判断一个对象是不是DBNull.Value
实例:
一个数据库表结构是
id name score
hello <null>
将上述表数据填充到.net中的DataTable的dataTable实例中
取出score值
dataTable.rows[0]["score"] 则得到的是DBNull.Value实例
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果为null值必须会报错,因为对象为空了,但是你可以使用Convert.ToString(DataTable.Rows[i]["name"]),这样经过转换就成了""值,便不会报错.
如果为""值使用。ToString(),就不会报错。
如果为""值使用。ToString(),就不会报错。
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
会报错的,如果name为null,那么null.ToString()一定会报错,因为null没有任何方法,要解决这个问题,只需要将.ToString()方法改为Convert.ToString(DatTable.Rows[i]["name"]),如果没有值,那么会获得一个null,Convert.ToString()比ToString()更安全
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不会,除非name字段不是哪个表里面就会,如果有哪个name字段,顶多就是dbnull,dbnull在C#转换就是string.empty
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询