0
我在這裏有一些問題。我的編碼沒有錯誤,但是當我調試編碼時,它沒有顯示數據庫中的任何數據。在gridview中顯示數據
這是我pagebehind
string nm = name.SelectedValue.ToString();
string id = ID.SelectedValue.ToString();
if (name != "ALL" && ID != "ALL")
{
str = "SELECT DISTINCT Name, StaffID FROM employeeID WHERE Name ='"+nm+"' AND StaffID ='"+id+"'"+
"ORDER BY Name, StaffID";
ds = con.ExecuteDataSet(str);
grdA.DataSource = dset;
grdA.DataBind();
}
protected void grdA_RowDataBound(object sender, GridViewRowEventArgs e)
{
string nm = name.SelectedValue.ToString();
string id = ID.SelectedValue.ToString();
DataRowView tableData = e.Row.DataItem as DataRowView;
if (e.Row.RowType == DataControlRowType.DataRow)
{
Label nme = e.Row.FindControl("lblNM") as Label;
Label idd = e.Row.FindControl("lblID") as Label;
GridView grdB = e.Row.FindControl("grdB") as GridView;
str = "SELECT ClassA, ClassB, TotalStudent FROM tuition WHERE Name = '" + nme.Text + "' AND StaffID='" + idd.Text + "' ORDER BY ClassA";
ds = dbCon.ExecuteDataSet(str);
grdB.DataSource = dset;
grdB.DataBind();
if (grdB.Rows.Count != 0)
{
str = "SELECT NVL(SUM(ClassA),0)ClassA,NVL(SUM(ClassB),0)ClassB,NVL(SUM(TotalStudent),0)TotalStudent FROM tuition WHERE Name = '" + nme.Text + "' AND StaffID='" + idd.Text + "' ORDER BY ClassA";
OracleDataReader odr = dbCon.ExecuteReader(str);
while (dr.Read())
{
Label lblnewCA = grdSatus.FooterRow.FindControl("lblnewCA") as Label;
lblnewCA.Text = dr.GetInt32(0).ToString();
Label lblnewCB = grdSatus.FooterRow.FindControl("lblnewCB") as Label;
lblnewCB.Text = dr.GetInt32(1).ToString();
}
odr.Dispose();
odr.Close();
}
}
else if (e.Row.RowType == DataControlRowType.Footer)
{
}
dset.Dispose();
}
protected void grdSatus_PageIndexChanging(object sender, GridViewPageEventArgs e)
{
string nm = name.SelectedValue.ToString();
string id = ID.SelectedValue.ToString();
DataRowView tableData = e.Row.DataItem as DataRowView;
if (e.Row.RowType == DataControlRowType.DataRow)
{
Label nme = e.Row.FindControl("lblNM") as Label;
Label idd = e.Row.FindControl("lblID") as Label;
GridView grdB = e.Row.FindControl("grdB") as GridView;
str = "SELECT ClassA, ClassB, TotalStudent FROM tuition WHERE Name = '" + nme.Text + "' AND StaffID='" + idd.Text + "' ORDER BY ClassA";
ds = dbCon.ExecuteDataSet(str);
grdB.DataSource = dset;
grdB.DataBind();
if (grdB.Rows.Count != 0)
{
str = "SELECT NVL(SUM(ClassA),0)ClassA,NVL(SUM(ClassB),0)ClassB,NVL(SUM(TotalStudent),0)TotalStudent FROM tuition WHERE Name = '" + nme.Text + "' AND StaffID='" + idd.Text + "' ORDER BY ClassA";
OracleDataReader odr = dbCon.ExecuteReader(str);
while (dr.Read())
{
Label lblnewCA = grdSatus.FooterRow.FindControl("lblnewCA") as Label;
lblnewCA.Text = dr.GetInt32(0).ToString();
Label lblnewCB = grdSatus.FooterRow.FindControl("lblnewCB") as Label;
lblnewCB.Text = dr.GetInt32(1).ToString();
}
odr.Dispose();
odr.Close();
}
}
dset.Dispose();
}
我不能發表任何圖片,所以我不能告訴你結果。
在grdB.DataBind()設置一個斷點。有沒有數據回來? – 2012-03-19 02:48:39
@MicahArmantrout沒有數據返回,但是在grdA中顯示數據庫中的數據,而grdB沒有數據顯示。 – stillLearning 2012-03-19 03:05:17