--但是这样的话就要在web。config中定义profile的内容,能否自己用表来存储呢?其实profile的数据也是保存在数据库中的, 跟membership一样.--用aspnet_regsql生成的那些表能否改变其结构?譬如增加一些字段?可以.不过你需要创建自定义的membershipProvider. 你需override .NET中的abstract class MembershipProvider.
--这些表之间是什么关系?它们是怎么通过字段联系以实现membership的管理的?你可以看到它们是通过ApplicationID和UserID联系起来的.
--虽然可以调用函数来删除数据,但又如何确定那些数据是可以删除的呢?确实是通过调用函数来删除. 它有个时间参数, 只删除在那个时间之后都没活动的用户的数据.

解决方案 »

  1.   


    public abstract int DeleteInactiveProfiles (
    ProfileAuthenticationOption authenticationOption,
    DateTime userInactiveSinceDate
    )如果
     authenticationOption=ProfileAuthenticationOption.All 匿名和注册用户都将被删除  
     authenticationOption=ProfileAuthenticationOption.Anonymous 只删除匿名用户
     authenticationOption=ProfileAuthenticationOption.Authenticated 只删除注册用户
    你可以再查下MSDN.
      

  2.   

    to zhouabc(试着专业一点) 我想在自己定义的表(如Order表)中使用aspnet_Users中UserID作为外键,这样做会否有问题?
    直觉上感觉应该没问题,但是我在查看aspnet_Users表中的数据的时候,发现同一个注册用户在aspnet_Users表中有两条记录,但是UserID不同,ApplicationID也不同,这样的话就不能通过UserID来鉴别用户了啊。我看的例子里面涉及到这种问题的时候,不是用UserID做外键,而是在自定义的表中有一个AddBy字段,貌似是用UserName来鉴别用户,这种做法对吗?谢谢!
      

  3.   

    需要ApplicationID和UserID一起来决定用户.