想要实现购物车持久化,就需要把数据存入数据库或COOKIES里面,但是在网上查了一下好象COOKIES大小有限制而且还可以被禁用,所以不是很好,于是就用数据库来存储.但是看了淘宝或当当它们上面匿名用户也可以有购物车,然后查了查可以用Profile实现,那么它是怎么实现的呢?最好有例子代码,谢谢.

解决方案 »

  1.   

    不需要代码但是看了淘宝或当当它们上面匿名用户也可以有购物车,然后查了查可以用Profile实现,那么它是怎么实现的呢?
    ---------
    也是需要存一些信息在Cookie里面。
    如果只是要在这次浏览标识一下客户,那么用SessionID就可以了。你把IE的所有缓存、Cookie清干净,他也没办法的。。
      

  2.   

    http://topic.csdn.net/u/20090801/15/0692d29d-a249-4341-a81a-78b934e20f39.htmlProfile好像要用到微软设计好的数据库 就是那个和Membership一起使用的那个
    不过可以自定义它的提供者~
      

  3.   

    那购物车应该写在数据库,还是cookies中比较好呢?
      

  4.   

    那购物车应该写在数据库,还是cookies中比较好呢?
      

  5.   

    访问量大的话 就不要放在数据库里了
    使用cookie+session保存
      

  6.   

    我有现存的一个例子
    是餐饮网站购物的例子
    和你描述的问题一样
    在我空间留下你的邮箱我email给你
      

  7.   

    你的是Application 项目,还是Web项目。二种做法不一样
      

  8.   

    不管什么项目,首先得生成Membership那个数据库
    然后操作如下:Web项目中..<!-- In web.config -->
    <profile >
      <properties>
        <add name="FavoritePasta" />
      </properties>
    </profile>调用方法:Profile.FavoritePasta = "Pumpkin Ravioli";
      

  9.   

    Application项目中:
    建立一个类:using System.Web.Profile;
    using System.Web.Security;namespace VideoShow
    {
        public class UserProfile : ProfileBase
        {
            public static UserProfile GetUserProfile(string username)
            {
                return Create(username) as UserProfile;
            }
    public static UserProfile GetUserProfile()
            {
                return Create(Membership.GetUser().UserName) as UserProfile;
            }        [SettingsAllowAnonymous(false)]
            public string Description
            {
                get { return base["Description"] as string; }
                set { base["Description"] = value; }
            }        [SettingsAllowAnonymous(false)]
            public string Location
            {
                get { return base["Location"] as string; }
                set { base["Location"] = value; }
            }        [SettingsAllowAnonymous(false)]
            public string FavoriteMovie
            {
                get { return base["FavoriteMovie"] as string; }
                set { base["FavoriteMovie"] = value; }
            }
        }
    }
      

  10.   

    [email protected]  谢谢了啊
      

  11.   

    注册用户就给用数据库,匿名就用cookie
    即使用数据库也是异步保存的,不会每一条都去保存