如何在asp.net中创建计算预约时间的计时器?

时间:2015-05-18 10:47:22

标签: asp.net timer

我已经创建了一个酒店房间预订网站。假设想要预订房间的人有30分钟的时间来做这件事,30分钟后,该网站将为他停止预订会议;在此预订期间,他将通过几个网页填写信息。 有没有办法创建一个可以在几个页面中计算30分钟的计时器?

1 个答案:

答案 0 :(得分:0)

当用户在提交页面后重新加载页面时,除非您拥有单页面应用程序,否则计时器将始终重新初始化。

另一种简单的方法是在用户开始填写表单时(或者初始阶段)存储具有日期时间值的cookie。你可以这样创建它,

// Set the cookie
HttpCookie cookie = new HttpCookie("date");
// Add the value
cookie["dateValue"] = DateTime.Now.ToString();
// Add the cookie
Response.Cookies.Add(cookie);

然后你可以检查这个cookie和(成功转换到DateTime对象后)你可以检查用户是否在他的30分钟试用期内有一些时间或者他是否迟到了。您可以使用此代码

在服务器端获取cookie
// This check would minimize one error
if(Request.Cookies["data"]["dateValue"] != null) {
   var time = Convert.ToDateTime(Request.Cookies["data"]["dateValue"]);
} else {
   // Maybe cookie got removed.
}

这样您就可以在ASP.NET Web应用程序中设置此功能。