重新加载后,HttpContext.Current.Request.Cookies不会加载值

时间:2012-08-07 19:03:08

标签: c# cookies

我正在使用多语言C#网站。我编写了一个数据库语言文件和语言类。在本课程中,我将所有字符串都放在适当的语言中。默认情况下,语言为荷兰语,除非有cookie。在我使用语言类之前,我在默认情况下编写了它,aspx.cs并请求像这样的cookie:

Context.Request.Cookies ["lancookie"];

如果语言已更改,我更改了Cookie并重新加载页面。 在我使用的语言课程中:

HttpContext.Current.Request.Cookies ["lancookie"].Value;

如果我改变了语言,那么它只需要几分钟就可以加载。我该怎么做才能触发cookie?

    public class Language
    {

      public static string getLanCookie ()
      {
        lancookie string = string.Empty;
        if (HttpContext.Current.Request.Cookies ["lancookie"]. Value! = null)
        {
            lancookie HttpContext.Current.Request.Cookies = ["lancookie"]. Value;
        }
        else
        {
            lancookie = "Dutch";
        }
        lancookie return;
      }

       public static string language = getLanCookie ()
       public static string Home = Language ("Home", language);
       public static string end = Language ("The End", language);
       public static string Subject = Language ("Box", language);

   }

1 个答案:

答案 0 :(得分:2)

你必须使用

  

HttpContext.Current.Response.Cookies

设置一个新的。为了能够清除cookie,您必须将其过期日期设置为过去。不会详细说明,因为这应该回答你的问题:

When to use Request.Cookies over Response.Cookies?