日期:2014-05-17  浏览次数:20362 次

关于“上一条(下一条)”功能按钮取值问题(求大神)
这是我写的上一条功能按钮,
可是当到最后一条的时候Label4.text从数据取出来的是空值,然后继续按 上一条或者下一条就抱错,提示用户对象未处理,
应该是取到的DataSet为Null吧,然后就报错?
求大神指教该如何解决这个问题?

protected void btup_Click(object sender, EventArgs e)
  {
  Label lable4 = (Label)FormView1.FindControl("Label4");
  string sqlst = "select top 1 c.fID,c.*,d.fName AS fContractType from tContractGoods a,tContract c,(select * from tContractType) d where a.fID=c.fID and c.fContractType = d.fType and c.fID > '"+lable4.Text+"'";
  SqlConnection sqlco = new SqlConnection(strCon);
  //创建填充数据集的适配器
  SqlDataAdapter myd = new SqlDataAdapter(sqlst, sqlco);
  //创建数据集
  DataSet mys = new DataSet();
  sqlco.Open();
  myd.Fill(mys, "tContractBOM");
  FormView1.DataSource = mys;
  FormView2.DataSource = mys;
  FormView1.DataBind();
  FormView2.DataBind();
  sqlco.Close();

------解决方案--------------------
1.判断dataset的数据是否为空则可以判断当前是否是最后一条后者最前一条
2.可以用viewstate保存你上一步骤点击到了哪一步,如果这是最后一条或者最前一条则把viewstate赋值给lable4这样点击下一步(上一步)就依旧可以获取到上一步骤的值不会报错