0

asp.net ドロップダウン リストと asp.net グリッドビュー コントロールがあります。ドロップダウンリスト要素を変更すると、データベースから新しい行がフェッチされます。

これをセッションに保存しています。次にドロップダウンリスト要素に変更があると、データベースから新しい行がフェッチされ、その行もセッションに追加したいと思います。

以下の 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();

}

ドロップダウンリストが変更されるたびに、セッション変数に行を追加し続ける方法がわかりません。

4

1 に答える 1

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();

}
于 2013-08-27T15:42:28.233 に答える