我想从数据库中取出某一列的值的和,以下是我写的代码。
 DataSet ds = obj.getdatabydataset("SELECT sum(VoteCount)   FROM VoteSelect where VoteItem_id = " + VoteItemID   );
        TotalCount = Convert.ToDecimal(ds.Tables[0].Rows[0][0].ToString() );
运行时提示:输入字符串的格式不正确。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.FormatException: 输入字符串的格式不正确。源错误: 
行 28: 
行 29:         DataSet ds = obj.getdatabydataset("SELECT sum(VoteCount)   FROM VoteSelect where VoteItem_id = " + VoteItemID   );
行 30:         TotalCount = Convert.ToDecimal(ds.Tables[0].Rows[0][0].ToString() );行 31:         return TotalCount; 
行 32:     }
 源文件: c:\Documents and Settings\Administrator\My Documents\Vote\VoteResult.ascx.cs    行: 30  不知什么问题,或者有别的方法
 

解决方案 »

  1.   

    监视下这个是什么值,string temp=ds.Tables[0].Rows[0][0].ToString();
      

  2.   

    ("SELECT IsNull(sum(VoteCount),0) FROM VoteSelect where VoteItem_id = " + VoteItemID );
      

  3.   

    string temp=ds.Tables[0].Rows[0][0].ToString();,我跟踪了,这句话的值为“”(空格)
      

  4.   

    ("SELECT IsNull(sum(VoteCount),0) FROM VoteSelect where VoteItem_id = " + VoteItemID );这句话运行结果为空值
      

  5.   

    既然为空,你还不知道怎么写啊?
    可以在数据库里面做处理,也可以判断下。if(!string.isnullorempty(ds.Tables[0].Rows[0][0].ToString()))
    {
       TotalCount = Convert.ToDecimal(ds.Tables[0].Rows[0][0].ToString() );
    }
      

  6.   

    if(!string.isnullorempty(ds.Tables[0].Rows[0][0].ToString()))
    {
       TotalCount = Convert.ToDecimal(ds.Tables[0].Rows[0][0].ToString() );
    }
    else
    {
    //提示 该项没有被选中过.
    }