protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
this.GetLeft.Value = invited.GetInviteCountByWeb().ToString();
HttpCookie oldCookie = Request.Cookies["Time"];
if (oldCookie != null)
{
if (DateTime.Now.ToString("yyyy-MM-dd") == Convert.ToDateTime(oldCookie.Values["GetTime"]).ToString("yyyy-MM-dd"))
{
this.IsGet.Value = "false";
}
else
{
HttpCookie newCookie = new HttpCookie("Time");
newCookie.Values.Add("GetTime", DateTime.Now.Date.ToString("yyyy-MM-dd"));
newCookie.Expires = DateTime.Now.AddHours(24.0);
Response.Cookies.Add(newCookie);
}
}
}
}
, но он не работает, то oldcookie равно нулю, когда браузер закрыт каждый раз .. так, как я могу установить кнопку нажмите один раз в день ??C# нажатие кнопки один раз в день
Что вы пытаетесь сделать? В общем, вы не можете полагаться на браузер, чтобы удерживать постоянные куки-файлы, так как вы можете сказать браузеру удалить их, когда браузер закрыт в любом случае. – Paolo
Почему вы используете свойство nullable 'this.IsGet'? Какой класс инкапсулирует этот метод? –
Я добавил тег ASP.NET, чтобы уточнить. В любом случае это плохой подход, вам нужно хранить информацию на стороне сервера (на ум приходит БД), а не в cookie. Что делать, если пользователь автоматически очищает файлы cookie каждый раз, когда он закрывает браузер? – Alex