Member 12770648 Ответов: 0

Фильтрация выходных данных в gridview из хранимой процедуры не работает


Я попытался отфильтровать выбор строки из gridview1 в gridview2, однако вывод в gridview2-это список таблицы без какого-либо фильтра.

Коды следующим образом



///
            ///
            ///GRIDVIEW2
            ///
            ///

            string str1;
            str1 = ConfigurationManager.ConnectionStrings["WEBHR"].ConnectionString;
            SqlConnection sqlcon1 = new SqlConnection(str1);

            string intno7, intno8;

            //Get the intno
           // intno7 = GridView2.SelectedRow.Cells[2].Text;
           // intno8 = GridView2.SelectedRow.Cells[6].Text;

            intno7 = txt_Code.Text;
            intno8 = txt_Year.Text;

            //call the stored procedure
            SqlCommand SqlCmd1 = new SqlCommand("sp_GetLeavGrid2year", sqlcon1);
            SqlCmd1.CommandType = System.Data.CommandType.StoredProcedure;


            //Supply the User_id parameter
            SqlCmd1.Parameters.AddWithValue("@BRNNO", intno7);
            SqlCmd1.Parameters.AddWithValue("@BYEAR", intno8);



            //Create and supply the output parameters

            //Create and supply the output parameters
            SqlCmd1.Parameters.Add("@BEMPNO", System.Data.SqlDbType.VarChar, 50);
            SqlCmd1.Parameters["@BEMPNO"].Direction = System.Data.ParameterDirection.Output;



            SqlCmd1.Parameters.Add("@BRETURNDATE", System.Data.SqlDbType.VarChar, 50);
            SqlCmd1.Parameters["@BRETURNDATE"].Direction = System.Data.ParameterDirection.Output;

            SqlCmd1.Parameters.Add("@BIDCNT", System.Data.SqlDbType.VarChar, 50);
            SqlCmd1.Parameters["@BIDCNT"].Direction = System.Data.ParameterDirection.Output;


            //Open the sql data connection
            sqlcon1.Open();

            //Execute the stored procedures
            SqlCmd1.ExecuteNonQuery();

            //Assign the results to the controls

            txt_idcnt.Text = SqlCmd1.Parameters["@BIDCNT"].Value.ToString();
            txt_Code.Text = SqlCmd1.Parameters["@BRNNO"].Value.ToString();
            txt_Empno.Text = SqlCmd1.Parameters["@BEMPNO"].Value.ToString();

            txt_Return_Date.Text = SqlCmd1.Parameters["@BRETURNDATE"].Value.ToString();
            txt_Year.Text = SqlCmd1.Parameters["@BYEAR"].Value.ToString();


            //SqlDataAdapter dm = new SqlDataAdapter("Select * from curasch where idno=@BRNNO and year1=@BYEAR", sqlcon1);

            SqlDataAdapter dm = new SqlDataAdapter("Select * from curasch where idno='" + txt_Code.Text + "' and year1='" + txt_Year.Text + "'", sqlcon1);

            DataSet df = new DataSet();
            dm.Fill(df,"Curasch");

            GridView2.DataSource = df.Tables[0];
            GridView2.DataBind();

            //GridView2.SelectedIndexChanged += new EventHandler(GridView2_SelectedIndexChanged);

            txt_Empno.Focus();

            LoadTransactionSearch();

            lblstatus.Text = "///Grid2 record successful";



            //  txt_Ed_Date.Text = SqlCmd.Parameters["@BEDDATE"].Value.ToString();

            lblstatus.Text = "///Grid2View record successful";

            //
            //
            sqlcon1.Close();




            ///
            ///
            ///GRIDVIEW2
            ///
            ///



Поскольку фильтр не работал, я попробовал альтернативу, однако фильтр все еще не работает.

Пожалуйста, помогите мне исправить эту проблему.

Спасибо

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

Я проверил сеть на подобный пример, однако не смог найти ни одного.

CHill60

Не используйте конкатенацию строк для создания инструкции sql - используйте SqlParameters

sachin.vishwa90

вы проверьте, если вы получаете значение из первой таблицы? возвращает ли ваш ADO-код правильные данные?
И для таких сценариев предпочтительнее использовать updatepanel. другие мудрые изменения произойдут, и событие pageload снова сбросит вещи, из-за чего вы не увидите новых изменений.

Member 12770648

пожалуйста, помогите с updatepanel, не знакомый с этим

спасибо

0 Ответов