ASP.NET配置文件删除

时间:2010-04-22 08:59:16

标签: asp.net profiles

我们使用ASP.NET配置文件子系统将键值对信息与用户相关联。

我正在实施删除用户的功能。

我一直在使用ProfileManager.DeleteProfile(string userName)方法,但我注意到这会在我们用来存储配置文件信息的aspnetdb数据库的aspnet_Users表中留下一行。

显然,我可以直接操作数据库,但我不愿意这样做。

确保从aspnetdb删除与用户关联的所有信息的最佳方式是什么?

PS:有一个诱人的Membership.DeleteUser(string userName, bool deleteEverything)方法,但这会返回数据库连接错误。一个web.config问题?

1 个答案:

答案 0 :(得分:0)

将成员资格部分添加到web.config,链接到包含有效凭据的连接字符串(此处:“SqlServices”):

   <membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="20">
      <providers>
        <remove name="AspNetSqlProvider" />
        <add name="SqlProvider"
          type="System.Web.Security.SqlMembershipProvider"
          connectionStringName="SqlServices"
          enablePasswordRetrieval="false"
          enablePasswordReset="true"
          requiresQuestionAndAnswer="true"
          passwordFormat="Hashed"
          applicationName="/" />
      </providers>
    </membership>

确保aspnetdb数据库中的aspnet_SchemaVersions表包含行:

membership 1 true

然后您可以使用会员资格api(Membership.DeleteUser)。