读书人

关于DataSet请问一下

发布时间: 2012-04-01 17:23:46 作者: rapoo

关于DataSet请教一下!

C# code
        private DataSet ds = new DataSet();        protected void Page_Load(object sender, EventArgs e)        {            if (!IsPostBack)            {                ds.Tables.Add();                ds.Tables[0].Columns.Add("a", typeof(string));                 ds.Tables[0].Columns.Add("b", typeof(string));                ds.Tables[0].Columns.Add("c", typeof(string));            }        }        protected void Button1_Click(object sender, ImageClickEventArgs e)        {            DataRow dr = ds.Tables[0].NewRow();            dr[0] = txtBrand.Text;            dr[1] = txtName.Text;            dr[2] = txtType.Text;            ds.Tables[0].Rows.Add(dr);        }

请问:当我点击Button1的时候,报错:
无法找到表 0。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
这是什么情况?

[解决办法]
每次请求页面,都会重新实例化一个ds,新ds里是没表的,所以报错。用Session或ViewState保存上一次的ds,Page_Load里重新取得;或者ds设为static(网站程序一般不能这样)。

读书人网 >asp.net

热点推荐