代码如下:
...
SqlDataRead read ...;
...(int) read[0]; //出 错
Convert.ToInt32(read[0]); //OK
这两种转换方式有什么区别吗,怎么第一种会出错?
另外 这个转换是用在一个方法的参数,有什么更好的方法吗?
...
SqlDataRead read ...;
...(int) read[0]; //出 错
Convert.ToInt32(read[0]); //OK
这两种转换方式有什么区别吗,怎么第一种会出错?
另外 这个转换是用在一个方法的参数,有什么更好的方法吗?
第一种是强制类型转换
当read[0]=null时 两种方法都会出错先对read[0]进行非空判断 再用 Int.TryParse()方法进行转换
强制类型转换不能而用Convert.ToInt32可以
Convert.ToInt32应用的应该是一个类函数吧、、、
而这种方式,只允许从string 类型转换为相应类型。使用万能转换器Convert吧。