0

データベースに保存されている保育園で勉強している学生の名前とロール番号のリストを表示したいのですが......しかし、次のコードにエラーがあり、理解できません。

 protected void NurseryButton_Click(object sender, EventArgs e)
{

    SQLHelper sqhlpr = new SQLHelper();
    sqhlpr.SqlText = "Select StudentName,RollNo from tblStudentInfo where Class=@Class";
    sqhlpr.AddParameter("Class", sender.ToString());
    sqhlpr.ExecuteScalar(false);
    DataTable dt = sqhlpr.getDataTable(false);
    Label1.Text = dt.Rows[0]["StudentName"].ToString();
}

エラーは次のようになります。「label1.textのテキストの最後の行の位置0に行がありません。誰か助けてもらえますか?

4

1 に答える 1

2

SqlHelper.ExecuteDataSetを使用する必要があるため、クエリの結果セットを取得します。ExecuteScalarは、行から単一の値を返します。例

DataTable dt = SqlHelper.ExecuteDataSet(ConnString,
                                 CommandType.Text,
                                 "Select StudentName,RollNo from tblStudentInfo where Class=@Class",
                                 parameter).Tables[0];
于 2013-03-12T09:19:15.137 に答える