向会话添加新内容

时间:2013-08-27 15:37:43

标签: c# asp.net visual-studio-2010 sql-server-2008 session

我有一个asp.net下拉列表和一个asp.net gridview控件。     在更改dropdownlist元素时,将从数据库中提取一个新行。

我将它存储在一个会话中。接下来,dropdownlist元素会有变化,会有 是从数据库中获取的新行,我也想将该行添加到会话中。

我在下面有dropdownlist_selectedIndexchanged事件:

protected void ddlClient_SelectedIndexChanged(object sender, EventArgs e)
    {
    int x = int.Parse(ddlClient.SelectedValue);

    DataSet ds = GetRowFromDatabase( x);
    Session["old"] = ds;
    ((DataSet)Session["old"]).Merge(ds);

    gridview.DataSource = Session["old"] ;
    gridview.DataBind();

}

每次我的下拉列表更改时,我都无法弄清楚如何在会话变量中追加我的行?

1 个答案:

答案 0 :(得分:2)

protected void ddlClient_SelectedIndexChanged(object sender, EventArgs e)
    {
    int x = int.Parse(ddlClient.SelectedValue);

    DataSet ds = GetRowFromDatabase( x);

    //the first time initialize the session variable
    if(Session["old"] == null)
    {
        Session["old"] = ds;
    }
    else
    { 
        ((DataSet)Session["old"]).Merge(ds);
    }

    gridview.DataSource = Session["old"] ;
    gridview.DataBind();

}