当前位置:编程学习 > C#/ASP.NET >>

救急!!!急求实现购物车功能的代码!!!

小弟我急求实现购物车功能的代码参考以下,在这里先鞠躬了!
--------------------编程问答-------------------- 就是当我在电子商务网站中,看到商品想买的时候,点击ImageButton的时候,如何商品添加到购物车里!先谢了! --------------------编程问答-------------------- 只能给你一个基本的解决办法
点击图片按钮 传递产品编号到 保存已买产品页面 a.aspx?product=1 ,在a.aspx中保存product=1的产品信息到Session["cart"]中
当然在这其中你也可以用AJax实现,同时也要判断Session["cart"]中是否包含了产品
最后返回到原来的页面,显示Session["cart"]中的信息
原来的页面可以用 
public static string GetFromUrl()
{
NameValueCollection coll = HttpContext.Current.Request.ServerVariables;
string fromUrl=coll["HTTP_REFERER"];
return fromUrl;

} --------------------编程问答-------------------- 简单的话用session可以时间
也可以用cookie
到结帐的时候把cookie里面的内容读出来算帐 --------------------编程问答-------------------- 可是当我点击ImageButton按钮的时候总是出现下面的错误阿。
“/毕业设计”应用程序中的服务器错误。
--------------------------------------------------------------------------------

回发或回调参数无效。在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEventValidation="true" %> 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。 
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 

异常详细信息: System.ArgumentException: 回发或回调参数无效。在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEventValidation="true" %> 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。

源错误: 

执行当前 Web 请求期间生成了未处理的异常。可以使用下面的异常堆栈跟踪信息确定有关异常原因和发生位置的信息。  

堆栈跟踪: 


[ArgumentException: 回发或回调参数无效。在配置中使用 <pages enableEventValidation="true"/> 或在页面中使用 <%@ Page EnableEventValidation="true" %> 启用了事件验证。出于安全目的,此功能验证回发或回调事件的参数是否来源于最初呈现这些事件的服务器控件。如果数据有效并且是预期的,则使用 ClientScriptManager.RegisterForEventValidation 方法来注册回发或回调数据以进行验证。]
   System.Web.UI.ClientScriptManager.ValidateEvent(String uniqueId, String argument) +2080188
   System.Web.UI.Control.ValidateEvent(String uniqueID, String eventArgument) +106
   System.Web.UI.WebControls.ImageButton.RaisePostBackEvent(String eventArgument) +32
   System.Web.UI.WebControls.ImageButton.System.Web.UI.IPostBackEventHandler.RaisePostBackEvent(String eventArgument) +7
   System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +11
   System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +33
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +5102

 


--------------------------------------------------------------------------------
版本信息: Microsoft .NET Framework 版本:2.0.50727.42; ASP.NET 版本:2.0.50727.42 --------------------编程问答-------------------- 使用cookie记录商品ID,数量,收银后清空 --------------------编程问答-------------------- forideal(我心飞翔)
如何使用cookie我没怎么用过,能否发一段代码参考一下呢!先谢了! --------------------编程问答-------------------- HttpCookie Group= new HttpCookie("Group");
        RSP.Values["ID"] = "4";
        RSP.Values["name"] = "Steven Wang";
        Response.Cookies.Add(RSP);

访问的时候就是.
this.Request.Cookies["Group"]["ID"].ToString();
this.Request.Cookiesp["Group"]["name"].ToString(); --------------------编程问答-------------------- 其实感觉sesstion不错....总是感觉能比cookie安全... --------------------编程问答-------------------- 又是购物车问题。呵呵。偶以前写的添加商品到购物车里的代码
/// <summary>
/// 添加商品到购物车中
/// </summary>
/// <param name="id">商品id</param>
/// <param name="SessionName">商品名字</param>
public  void add(string id,string SessionName)         
{             
    Hashtable ht = new Hashtable();             
    if (HttpContext.Current.Session[SessionName] == null)//如果购物车空
    {                 
        ht.Add(id, 1);//添加商品id到表中,数量为1 
        HttpContext.Current.Session[SessionName] = ht;//哈希表存入session

    }             
    else             
    {                 
        ht = (Hashtable)HttpContext.Current.Session[SessionName];
        if (ht[id] == null)//如果商品不存在
        {                     
           ht[id] = 1;               
        }                 
        else//如果选中商品以存在,则数最加1                 
        {                     
            ht[id] =(int)ht[id]+ 1;                 
        }                
         HttpContext.Current.Session[SessionName] = ht;            
    }        
}  
--------------------编程问答-------------------- 还有一个问题,当我用LinkButton的时候没有错误,当我用ImageButto 的时候出现了上面的错误,是怎么回事啊! --------------------编程问答--------------------
呵呵 又见购物车

http://www.51aspx.com/Type/11 --------------------编程问答-------------------- 呵呵 又见搞宣传的
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,