在本地测试是好的,但是 发布到服务器后 就获取不到cookies 了
/// <summary>
/// 得到购物车
/// </summary>
/// <param name="ItemId">购物车Id</param>
/// <param name="Quantity">数量</param>
/// <param name="Name">商品名字</param>
/// <param name="Price">商品价格</param>
/// <param name="ProviderName">出版社</param>
/// <param name="ProviderName">商品类型</param>
public void SaveCookieCart(int Quantity, string Name, decimal Price, string ProviderName,string TypeId)
{
if (HttpContext.Current.Request.Cookies["ShoppingCart"] == null)
{
HttpCookie cookie = new HttpCookie("ShoppingCart");
cookie.Values.Add("Quantity", Quantity.ToString());
cookie.Values.Add("Name", Name.ToString());
cookie.Values.Add("Price", Price.ToString());
cookie.Values.Add("ProviderName", ProviderName.ToString());
cookie.Values.Add("TypeId", TypeId.ToString());
HttpContext.Current.Response.AppendCookie(cookie);
}
else
{
//用逗号隔开
HttpCookie cookie = HttpContext.Current.Request.Cookies["ShoppingCart"]; string[] QuantityArray = HttpContext.Current.Request.Cookies["ShoppingCart"]["Quantity"].ToString().Split(','); string[] NameArray = HttpContext.Current.Request.Cookies["ShoppingCart"]["Name"].ToString().Split(','); string[] PriceArray = HttpContext.Current.Request.Cookies["ShoppingCart"]["Price"].ToString().Split(','); string[] ProviderNameArray = HttpContext.Current.Request.Cookies["ShoppingCart"]["ProviderName"].ToString().Split(','); string[] TypeIdArray = HttpContext.Current.Request.Cookies["ShoppingCart"]["TypeId"].ToString().Split(','); if (!((IList)NameArray).Contains(Name.ToString()))
{
cookie.Values["Quantity"] = HttpContext.Current.Request.Cookies["ShoppingCart"]["Quantity"] + "," + Quantity;
cookie.Values["Name"] = HttpContext.Current.Request.Cookies["ShoppingCart"]["Name"] + "," + Name;
cookie.Values["Price"] = HttpContext.Current.Request.Cookies["ShoppingCart"]["Price"] + "," + Price;
cookie.Values["ProviderName"] = HttpContext.Current.Request.Cookies["ShoppingCart"]["ProviderName"] + "," + ProviderName;
cookie.Values["TypeId"] = HttpContext.Current.Request.Cookies["ShoppingCart"]["TypeId"] + "," + TypeId;
HttpContext.Current.Response.AppendCookie(cookie);
}
else
{
string[] QuantityArray1 = HttpContext.Current.Request.Cookies["ShoppingCart"]["Quantity"].ToString().Split(','); string[] NameArray1 = HttpContext.Current.Request.Cookies["ShoppingCart"]["Name"].ToString().Split(',');
int i=0;
foreach (string var in NameArray1)
{
if (var.ToString() == Name.ToString())
{
QuantityArray1[i]=Convert.ToString(Convert.ToInt32( QuantityArray1[i])+1);
} i++;
} string quantrty="";
for(int j=0;j<QuantityArray1.Length;j++)
{
quantrty+=QuantityArray1[j]+",";
} cookie.Values["Quantity"] = quantrty.Substring(0, quantrty.Length - 1); } HttpContext.Current.Response.AppendCookie(cookie); } }
/// <summary>
/// 得到购物车
/// </summary>
/// <param name="ItemId">购物车Id</param>
/// <param name="Quantity">数量</param>
/// <param name="Name">商品名字</param>
/// <param name="Price">商品价格</param>
/// <param name="ProviderName">出版社</param>
/// <param name="ProviderName">商品类型</param>
public void SaveCookieCart(int Quantity, string Name, decimal Price, string ProviderName,string TypeId)
{
if (HttpContext.Current.Request.Cookies["ShoppingCart"] == null)
{
HttpCookie cookie = new HttpCookie("ShoppingCart");
cookie.Values.Add("Quantity", Quantity.ToString());
cookie.Values.Add("Name", Name.ToString());
cookie.Values.Add("Price", Price.ToString());
cookie.Values.Add("ProviderName", ProviderName.ToString());
cookie.Values.Add("TypeId", TypeId.ToString());
HttpContext.Current.Response.AppendCookie(cookie);
}
else
{
//用逗号隔开
HttpCookie cookie = HttpContext.Current.Request.Cookies["ShoppingCart"]; string[] QuantityArray = HttpContext.Current.Request.Cookies["ShoppingCart"]["Quantity"].ToString().Split(','); string[] NameArray = HttpContext.Current.Request.Cookies["ShoppingCart"]["Name"].ToString().Split(','); string[] PriceArray = HttpContext.Current.Request.Cookies["ShoppingCart"]["Price"].ToString().Split(','); string[] ProviderNameArray = HttpContext.Current.Request.Cookies["ShoppingCart"]["ProviderName"].ToString().Split(','); string[] TypeIdArray = HttpContext.Current.Request.Cookies["ShoppingCart"]["TypeId"].ToString().Split(','); if (!((IList)NameArray).Contains(Name.ToString()))
{
cookie.Values["Quantity"] = HttpContext.Current.Request.Cookies["ShoppingCart"]["Quantity"] + "," + Quantity;
cookie.Values["Name"] = HttpContext.Current.Request.Cookies["ShoppingCart"]["Name"] + "," + Name;
cookie.Values["Price"] = HttpContext.Current.Request.Cookies["ShoppingCart"]["Price"] + "," + Price;
cookie.Values["ProviderName"] = HttpContext.Current.Request.Cookies["ShoppingCart"]["ProviderName"] + "," + ProviderName;
cookie.Values["TypeId"] = HttpContext.Current.Request.Cookies["ShoppingCart"]["TypeId"] + "," + TypeId;
HttpContext.Current.Response.AppendCookie(cookie);
}
else
{
string[] QuantityArray1 = HttpContext.Current.Request.Cookies["ShoppingCart"]["Quantity"].ToString().Split(','); string[] NameArray1 = HttpContext.Current.Request.Cookies["ShoppingCart"]["Name"].ToString().Split(',');
int i=0;
foreach (string var in NameArray1)
{
if (var.ToString() == Name.ToString())
{
QuantityArray1[i]=Convert.ToString(Convert.ToInt32( QuantityArray1[i])+1);
} i++;
} string quantrty="";
for(int j=0;j<QuantityArray1.Length;j++)
{
quantrty+=QuantityArray1[j]+",";
} cookie.Values["Quantity"] = quantrty.Substring(0, quantrty.Length - 1); } HttpContext.Current.Response.AppendCookie(cookie); } }
HttpCookie cookie = new HttpCookie("ShoppingCart");
cookie.Values.Add("Quantity", Quantity.ToString());
cookie.Values.Add("Name", Name.ToString());
cookie.Values.Add("Price", Price.ToString());
cookie.Values.Add("ProviderName", ProviderName.ToString());
cookie.Values.Add("TypeId", TypeId.ToString());
HttpContext.Current.Response.AppendCookie(cookie);你没置cookies的过期时间?
/// 添加cookeis
/// </summary>
public void AddCookies()
{
HttpCookie cookies = new HttpCookie("Porschev");
cookies["name"] = "Zhong Wei";
cookies["sex"] = "1";
cookies.Expires = DateTime.Now.AddMinutes(20);
Response.Cookies.Add(cookies);
} cookies的一些操作
如果能的话,就是你获取的时候名字不对吧