实在是想不到问题的所在了
//这个是来写/更新cookie的某一个键的
public static void WriteCookies(string key, string value)
{
if (value != null)
value = HttpUtility.UrlEncode(value, Encoding.Default);
HttpCookie cookie1 = HttpContext.Current.Request.Cookies[_cookie_name];
if (cookie1 == null)
{
cookie1 = new HttpCookie(_cookie_name);
cookie1.Values.Add(key, value);
cookie1.Expires = DateTime.Now.AddYears(1);
cookie1.Domain = Function.getModule().CookieDomain;
HttpContext.Current.Response.Cookies.Add(cookie1);
return;
}
cookie1.Values[key] = value;
cookie1.Expires = DateTime.Now.AddYears(1);
cookie1.Domain = Function.getModule().CookieDomain;
HttpContext.Current.Response.Cookies.Set(cookie1);
}
//这是得到当前cookie一个键的值
public static string GetCookisValue(string key)
{
HttpCookie myCookie = HttpContext.Current.Request.Cookies[_cookie_name];
if (myCookie != null)
{
if (myCookie.Values[key] != null)
return HttpUtility.UrlDecode(myCookie.Values[key].ToString(),Encoding.Default);
return "";
}
return "";
}
调用该方法:
global.WriteCookies("Name", _txt_username.Text.Trim());
global.WriteCookies("Url", _homepage);
每次只更新了Url,却没有更新Name
跟踪时出现的怪现象是:
跟踪到第一个WriteCookies("Name","");时,更新正常,此时Name已被更新
跟踪到下一个WriteCookies("Url"......);时,却发现更新过的name键又还原了
这是当前页面的cookie
AJSTAT_ok_pages
AJSTAT_ok_times
CommentUser
Name=12345
Url=http%3a%2f%2fwww.123456c78.com
ASP.NET_SessionId
Name一直改不了,URl倒是可以更新
怪在调用同一方法,为什么只能更新第二个键?
请大家帮解一下
//这个是来写/更新cookie的某一个键的
public static void WriteCookies(string key, string value)
{
if (value != null)
value = HttpUtility.UrlEncode(value, Encoding.Default);
HttpCookie cookie1 = HttpContext.Current.Request.Cookies[_cookie_name];
if (cookie1 == null)
{
cookie1 = new HttpCookie(_cookie_name);
cookie1.Values.Add(key, value);
cookie1.Expires = DateTime.Now.AddYears(1);
cookie1.Domain = Function.getModule().CookieDomain;
HttpContext.Current.Response.Cookies.Add(cookie1);
return;
}
cookie1.Values[key] = value;
cookie1.Expires = DateTime.Now.AddYears(1);
cookie1.Domain = Function.getModule().CookieDomain;
HttpContext.Current.Response.Cookies.Set(cookie1);
}
//这是得到当前cookie一个键的值
public static string GetCookisValue(string key)
{
HttpCookie myCookie = HttpContext.Current.Request.Cookies[_cookie_name];
if (myCookie != null)
{
if (myCookie.Values[key] != null)
return HttpUtility.UrlDecode(myCookie.Values[key].ToString(),Encoding.Default);
return "";
}
return "";
}
调用该方法:
global.WriteCookies("Name", _txt_username.Text.Trim());
global.WriteCookies("Url", _homepage);
每次只更新了Url,却没有更新Name
跟踪时出现的怪现象是:
跟踪到第一个WriteCookies("Name","");时,更新正常,此时Name已被更新
跟踪到下一个WriteCookies("Url"......);时,却发现更新过的name键又还原了
这是当前页面的cookie
AJSTAT_ok_pages
AJSTAT_ok_times
CommentUser
Name=12345
Url=http%3a%2f%2fwww.123456c78.com
ASP.NET_SessionId
Name一直改不了,URl倒是可以更新
怪在调用同一方法,为什么只能更新第二个键?
请大家帮解一下