Asp.Net 中浏览器刷新时的页面重定向
本文关键字:重定向 刷新 Net 浏览器 Asp | 更新日期: 2023-09-27 18:31:12
我正在开发一个用于进行在线考试的Web应用程序。我想阻止参赛者在浏览器中刷新页面。如果他们这样做,我想将他们导航到一个说他们被取消资格的页面。我该如何实现?
以下代码片段检测函数page_load"刷新"
bool IsPageRefresh = false;
protected void Page_Load(object sender, EventArgs e)
{
//this section of code checks if the page postback is due to genuine submit by user or by pressing "refresh"
if (!IsPostBack)
{
ViewState["ViewStateId"] = System.Guid.NewGuid().ToString();
Session["SessionId"] = ViewState["ViewStateId"].ToString();
}
else
{
if (ViewState["ViewStateId"].ToString() != Session["SessionId"].ToString())
{
IsPageRefresh = true;
}
Session["SessionId"] = System.Guid.NewGuid().ToString();
ViewState["ViewStateId"] = Session["SessionId"].ToString();
}
}
然后,您可以使用代码隐藏中的"IsPageRefresh"布尔标志来确定它是由于真正的用户提交操作还是浏览器"刷新"而导致的回发。