注册 登录
编程论坛 ASP.NET技术论坛

求助一个关于sqlDatareader的问题

寂寞的柳丁 发布于 2008-03-17 13:15, 724 次点击
int [] Options;//存放某个选项被选择的次数
string [] OptionsType; //存放选项
SqlConnection conn = new SqlConnection(ConfigurationManager.AppSettings["strConn"].ToString()); //创建数据库连接以获得数据
        conn.Open();
        SqlCommand com = new SqlCommand("SELECT COUNT(WebID) AS Num ,answer FROM Favorites  GROUP BY answer",conn);
        SqlDataReader dr = com.ExecuteReader();
        int i = 0;
        while (dr.Read())
        {
             Options[i] = dr.GetInt32(0);
             OptionsType[i] = dr.GetString(1) + "选项";
             i++;                                           //读取数据库中的数据并存入数组
         }


        dr.Close();
        conn.Close();

这是我的代码,数据库中只有一个 id(自动增长)  answer存放答案的类型(a。b。c。d)
例如 选a 的 10个人 b的11个 c的 10 选d的9个 我就是想得到这样的结果存放到数组中。
现在我的问题是红色部分 编译错误 错误是 下表越界。

麻烦那位高手帮我看下 不胜感激
2 回复
#2
beniao2008-03-18 01:15
没搞懂你的意思
#3
仰望星空2008-03-18 13:59
楼主,你的int [] Options没有赋初始长度,默认的可能是0长度,既然选项只有4个那就int[] Options = new int[4];这样就不会有问题了吧
1