2014-01-07 55 views
0

我有一種情況,用戶可以打開多個標籤或頁面來拉起不同的報告。當他們從a.aspx中提取報告時,我通過會話變量將數據傳遞給b.aspx,並且它加載b.aspx就好了。我遇到的問題是,因爲會話變量存在於所有頁面中,如果它們在任何報告頁面(b.aspx的副本)上進行刷新,他們將獲得他們嘗試從a.aspx打開的最新報告。我怎樣纔能有一個會話變量或可能是一個GET或POST刷新b.aspx只留下特定的b.aspx?眼下調用頁面上a.aspx.csc#asp存儲變量之間刷新只有1個標籤/頁

HttpContext.Current.Session["CHART"] = "chartname"; 

與接收頁b.aspx.cs,

string chart = HttpContext.Current.Session["CHART"].ToString(); 

回答

2

使用查詢字符串這不是會議。它看起來像只是將字符串值(圖表名稱)傳遞給其他頁面。用querystrings刷新你不會有問題。

所以傳遞它爲b.aspx?Chart =「chartname」。

+1

然後用'string chartname = Request.QueryString [「chartname」]'讀取b.aspx上的值。很明顯,在嘗試閱讀它之前,您需要確保查詢字符串包含圖表名稱。 – mason

+0

@ msm8bball QueryString [「Chart」] –

+1

啊是的,這將是'string chartname = Request.QueryString [「Chart」]'因爲這是要傳遞的查詢字符串參數的名稱。 Good catch @JustinRyder – mason