Показать данные в виде сетки - PullRequest
0 голосов
/ 19 марта 2012

У меня есть некоторые проблемы здесь.В моем кодировании нет ошибок, но когда я отлаживал кодирование, он не отображал никаких данных из базы данных.

Это моя страница

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();
}

Я не могу опубликовать ни одного изображенияпока, поэтому я не могу показать вам результат.

1 Ответ

0 голосов
/ 19 марта 2012

Проверьте предложения WHERE.Остановите свой код в отладчике, поместите наблюдение в переменную str и скопируйте содержимое в окно sql.

Если предложение WHERE неверно, вы получите приседание (ничего).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...