Member 12677198 Ответов: 1

Получить идентификатор кнопки отправки для запроса


у меня есть главная страница в witch более 30 кнопок типа (java,asp,php,sql,c,c++и т. д...)
и у меня есть таблица вопросов. все вопросы помечены одним предметом, таким как asp,java и т. д.


я хочу получить данные в соответствии с кнопкой click.
как это возможно.

(я думаю, что одна страница для одной кнопки-это не очень хорошая идея.)

Что я уже пробовал:

protected void BindRepeaterData()
    {
        con.Open();
        SqlCommand cmd = new SqlCommand("SELECT * from question", con);
        int count = (int)cmd.ExecuteScalar();
        DataSet ds = new DataSet();
        SqlDataAdapter da = new SqlDataAdapter(cmd);
        da.Fill(ds);
        RepDetails.DataSource = ds;
        RepDetails.DataBind();
        con.Close();
    }

CHill60

Вам понадобится предложение WHERE в вашем sql-запросе и используйте SqlParameter для добавления текста в запрос, для которого была нажата кнопка ever.
Вам также нужно будет выполнить ExecuteQuery, а не ExecuteScalar, чтобы вы могли получить все результаты по каждой теме.
Кроме того, я не могу помочь, так как не хватает информации

Member 12677198

спасибо

ZurdoDev

Я думаю, пожалуйста, опубликуйте это как решение.

CHill60

- Готово!

1 Ответов

Рейтинг:
0

CHill60

Согласно моему комментарию выше ...

Вам понадобится WHERE предложение в вашем sql-запросе и используйте SqlParameter, чтобы добавить текст в запрос, для которого когда-либо была нажата кнопка.
Вам также нужно будет выполнить ExecuteQuery, а не ExecuteScalar, чтобы вы могли получить все результаты по каждой теме.
Кроме того, я не могу помочь, так как не хватает информации.
Вероятно, это будет что-то вроде этого (не тестируемое и не компилируемое) ...

protected void BindRepeaterData(string topic)
    {
        con.Open();
        SqlCommand cmd = new SqlCommand("SELECT * from question WHERE topic=@topic", con);
        cmd.Parameters.AddWithValue("@topic", topic);
        //int count = (int)cmd.ExecuteScalar(); //don't need this at all
        DataSet ds = new DataSet();
        da.Fill(ds);
...
        int count = ds.Tables[0].Rows.Count;