在SqlDataReader中正确地将int转换为字符串

时间:2015-12-01 11:51:36

标签: c# sql-server

代码:

string variablestr;

if (!reader.IsDBNull(reader.GetOrdinal("table-of-int")))
{
    variablestr = reader.GetInt32(reader.GetOrdinal("table-of-int")).ToString().PadRight(32);
}
else
{
    variablestr = new string(' ', 32);
};

错误:

  

发生类型系统无效转换异常的未处理异常   在system.data.dll中。

我显然遗漏了一些东西。

1 个答案:

答案 0 :(得分:0)

根据您的最终结果,我建议您执行以下操作:

string variablestr;

if (!reader.IsDBNull(reader.GetOrdinal("table-of-int")))
{
   variablestr = Convert.ToString(reader.GetInt32(reader.GetOrdinal("table-of-int"))).PadRight(32);

}
else
{
    variablestr = new string(' ', 32);
};