我用购物车建立了一个网站。
我有一个带有cartItems的表: * [ItemId] * [CartId] * [数量] * [创建日期] * [TeabagId]
此方法返回用于检索当前用户购物车的ID(登录或注销)。如果用户已登录,则返回用户名。如果用户已注销,则返回随机字符串。
以下函数获取购物车ID
问题是,当没有附加调试器时,它会在登录并注销后返回用户名。
public string GetCartId()
{
HttpContext Context = HttpContext.Current;
if (Context.User.Identity.Name == null || Context.User.Identity.Name == "") // no user online
{
if (HttpContext.Current.Session[CartSessionKey] == null || HttpContext.Current.Session[CartSessionKey] == "")
{
Guid tempCartId = Guid.NewGuid();
HttpContext.Current.Session[CartSessionKey] = tempCartId.ToString();
return tempCartId.ToString();
}
else // sessie has cartId
{
return HttpContext.Current.Session[CartSessionKey].ToString();
}
}
else // User is online
{
return Membership.GetUser().UserName;
}
}