我有一個ASP.NET WebForms應用程序處理髮布的請求,並通過JavaScript警報(通過ClientScript.RegisterStartupScript
...)向用戶顯示一條消息。在客戶端代碼執行後的某個時間點刷新頁面,當然我得到了「要顯示此頁面,Firefox必須發送信息,以便重複之前執行的任何操作(例如搜索或訂單確認)」其他瀏覽器中的或類似的。發佈/重定向/獲取警報給用戶?
現在,我知道Post/Redirect/Get模式,但如果我在發佈後立即重定向 - 我無法顯示JS警報。有沒有辦法顯示警報並執行服務器端重定向?我知道我可以添加一個特定的查詢字符串來重定向URL,在頁面加載時檢查它,並顯示警報,如果存在,但這意味着如果重定向頁面被刷新 - 我會再次得到該警報,這是不可取的。有沒有辦法做到這一點,不會涉及複雜的雜亂旗幟?
我不認爲TempData的是在WebForms的可用pplication。除非我錯了? – 2015-02-09 21:00:04
道歉 - 錯過了。我認爲Session是唯一的選擇!我已經添加了一些我的答案。 – 2015-02-09 21:05:24
謝謝。我通常儘量避免使用Session來處理這些場景,但它看起來似乎是唯一可行的解決方案。 – 2015-02-09 21:26:28