输入字符串的格式不正确。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.FormatException: 输入字符串的格式不正确。源错误: 
行 20:             ItemControl item = new ItemControl();
行 21:             //获取总投票数
行 22:             VoteCount = item.GetVoteCount(int.Parse(DropDownList1.SelectedValue));
行 23:         }
行 24:     }是什么原因呢?求指教,谢谢大虾``
 

解决方案 »

  1.   

    1,确认你的 GetVoteCount方法参数是INT
    你可以设置断点,察看SelectValue的值
    2, VoteCount 这是什么东西
    3,你的实力化ItemControl 的构造函数看看做了什么
      

  2.   

    基本上
    DropDownList1.SelectedValue
    获取不到,可能为null或不是数字
      

  3.   

    谢谢上面的大虾。
    做的是一个投票系统,每个投票主题对应若干个投票项目,目的是要求得一个主题下每个项目的得票百分比。
    表的字段是:itemid    titleid  itemname  itemcount
    其中的titleid的值我想通过dropdownlist 的 selectedvalue 获得这个类里面定义的方法:
    private const string PARM_TITLE_ID = "@TitleID";
     private const string SQL_SELECT_COUNT = "SELECT SUM(ItemCount) FROM VoteItem WHERE TitleID=@TitleID";
        ///获取总投票数量
        public int GetVoteCount(int titleid)
        {
            StringBuilder strSQL = new StringBuilder();
            SqlCommand cmd = new SqlCommand();
            //获取参数列表
            //获取缓存的参数列表
            SqlParameter parm = new SqlParameter(PARM_TITLE_ID, SqlDbType.Int);
            cmd.Parameters.Add(parm);
            using (SqlConnection conn = new SqlConnection(SqlHelper.ConnectionStringLocalTransaction))
            {
                //添加SQL语句
                strSQL.Append(SQL_SELECT_COUNT);
                conn.Open();
                //设置SqlCommand的属性
                cmd.Connection = conn;
                cmd.CommandType = CommandType.Text;
                cmd.CommandText = strSQL.ToString();
                //执行查询
                int count = (int)cmd.ExecuteScalar();
                return count;
                cmd.Parameters.Clear();
            }
    这个是方法的应用:
     private int VoteCount;
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!Page.IsPostBack)
            {
                //初始化投票项目类
                ItemControl item = new ItemControl();
                //获取总投票数
                VoteCount = item.GetVoteCount(int.Parse(DropDownList1.SelectedValue));
            }
        }
      

  4.   

    应该是 DropDownList1.SelectedValue 这个selectedValue不对 首先错误是转换错误 这里就只有把selectValue转化成int selectValue和selectIndex是有区别的哦
      

  5.   

    private int VoteCount;改成
    public int VoteCount=0;试下,
    2。看DropDownList1的Value值是不是与Text一样,
    不是int的整数而是字符
      

  6.   

    第一次读取怎么会有值,LZ真搞笑!ispostback的!去掉