【发布时间】:2011-05-12 13:08:18
【问题描述】:
DataReader[0].ToString() 和 (string)DataReader[0] 有区别吗?
我的猜测是,如果数据库类型不是字符串类型,(string)DataReader[0] 可能会失败,而DataReader[0].ToString() 只会将 DB null 之外的任何内容转换为字符串。是这样吗?
哪个更快?
【问题讨论】:
-
为了好玩,我会添加
Convert.ToString(DataReader[0]);:-) -
"只会将 DB null 之外的任何内容转换为字符串" 实际上,
DBNull.Value确实有一个ToString(),因为它是一个实际的对象,所以你可以在它上面调用ToString()会正常工作的。 -
但是如果数据库中的 DataReader[0] 为空,
ToString()会抛出异常就是我的意思。
标签: c# tostring datareader