如果字段不是字符串,则将SqlDataReader字段强制转换为字符串

时间:2013-10-24 00:29:32

标签: c# sql sql-server-2008 casting

我需要从C#中的SqlDataReader读取,我知道该字段的类型为varchar,char,date,int,double或string。

我真正想做的只是:

string str = (string)reader["field"];

显然我会得到一个强制转换异常,因为你不能把一个日期,双精度等转换成字符串,我试图找出一种最简单的方法,将所有从db返回的字符串作为字符串。

2 个答案:

答案 0 :(得分:0)

  

我想弄清楚铸造一切的最简单方法   从db作为字符串返回。

只需调用ToString方法即可。

string str = reader["field"].ToString();

确保字段名称存在。

答案 1 :(得分:0)

string str = reader["field"].IsNullorDBNll() ? string.Empty : reader["field"].ToString()