实现Profile购物车的匿名用户迁移

在Global.asax文件中,增加一个方法:

  protected void Profile_MigrateAnonymous(Object s, ProfileMigrateEventArgs e)
    {
        ProfileCommon anonProfile = Profile.GetProfile(e.AnonymousID);
       
        //迁移Profile用户名
        //Profile.userName = anonProfile.userName;
       
        //迁移购物车
        //Profile.ShoppingCart = anonProfile.ShoppingCart;
       
        IEnumerator ie = anonProfile.ShoppingCart.CartItems.GetEnumerator();
        while (ie.MoveNext())
        {
            Profile.ShoppingCart.AddCartItem((CartItem)ie.Current);
        }             
      
        //清除匿名COOKIE,不然每次请求页面都执行此事件
        AnonymousIdentificationModule.ClearAnonymousIdentifier();
        // Response.Cookies["UserName"].Expires = DateTime.Now.AddDays(-1);
       
        //匿名COOKIE标识已重置,下次匿名访问将创建新的profile数据条,原来的匿名profile数据条已无意义
        ProfileManager.DeleteProfile(e.AnonymousID);      
    }

 

 

posted on 2009-06-15 15:17  张国良  阅读(209)  评论(0编辑  收藏  举报

导航