2010-10-05 4 views
4

Est-ce que j'utilise SqlServices.Uninstall() pour désinstaller les tables d'adhésion ASP.NET et d'autres choses par programme à partir de la base de données. Impossible de désinstaller la ou les entités spécifiées car la table SQL 'aspnet_Membership' de la base de données '[DBNAME]' n'est pas vide. Vous devez d'abord supprimer toutes les lignes de la table.Comment forcer Sqlservices.Uninstall à supprimer aussi les anciennes données?

Existe-t-il un moyen de dire à SqlServices ou à toute autre classe dans .NET d'effacer aussi ces anciennes données?

Répondre

0

Vous pouvez utiliser ce qui suit pour supprimer tous les utilisateurs de votre base de données.

foreach (MembershipUser user in Membership.GetAllUsers()) 
      Membership.DeleteUser(user.UserName, true);    
     SqlServices.Uninstall() 

Attention:

Le code ci-dessus exécute 1 + N (DELETE) + instructions SQL de la méthode de désinstallation, où N == Nombre d'utilisateurs dans la base de données. Donc ce n'est pas très efficace.

Si vous voulez quelque chose de plus efficace, vous devez écrire votre propre procédure stockée.

Questions connexes