首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

关于DataSet请问一下

2012-04-01 
关于DataSet请教一下!C# codeprivate DataSet ds new DataSet()protected void Page_Load(object sende

关于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(网站程序一般不能这样)。

热点排行