nar86 Ответов: 1

Сортировка в gridview ошибка


в gridview запишите следующее


slipdate     slipno   product  Desc  status

 21.08.2018    456       A       yes     New
 22.08.2018    123       B       yes     New
 23.08.2018    145       C       yes     New
 22.08.2018    557       D       yes     New


в режиме выполнения, когда я нажимаю слип нет в сетке для сортировки появляется сообщение об ошибке следующим образом

unable to cast object of type 'system.data.dataset' to type 'system.data.datatable'

в чем ошибка в моем приведенном выше коде в коде сортировки gridview?

какие изменения я должен внести

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

public void refreshdata()
        {
            String strConnString = ConfigurationManager.ConnectionStrings["ConnectionStrings"].ConnectionString;
            SqlConnection con = new SqlConnection(strConnString);
            SqlCommand cmd = new SqlCommand("select * from [transact].[transaction_item] con);
            con.Open();
            SqlDataAdapter da = new SqlDataAdapter();
            DataSet ds = new DataSet();
            da.SelectCommand = cmd;
            da.Fill(ds);
            grdRpt.DataSource = ds;
            grdRpt.DataBind();
            ViewState["dirState"] = ds;
            ViewState["sortdr"] = "Asc";
        }

        protected void grdRpt_Sorting(object sender, GridViewSortEventArgs e)
        {
            DataTable dtrslt = (DataTable)ViewState["dirState"];
            if (dtrslt.Rows.Count > 0)
            {
                if (Convert.ToString(ViewState["sortdr"]) == "Asc")
                {
                    dtrslt.DefaultView.Sort = e.SortExpression + " Desc";
                    ViewState["sortdr"] = "Desc";
                }
                else
                {
                    dtrslt.DefaultView.Sort = e.SortExpression + " Asc";
                    ViewState["sortdr"] = "Asc";
                }
                grdRpt.DataSource = dtrslt;
                grdRpt.DataBind();
            }
        }

1 Ответов

Рейтинг:
0

Patrice T

"работаем парами, 2 на 2, у вас тут 1, второй отсутствует:

SqlCommand cmd = new SqlCommand("select * from [transact].[transaction_item] con);
                                ^