Пользователь все еще существует в Roles.GetUsersInRole после DeleteUser () с deleteAllRelatedData = false - PullRequest
1 голос
/ 13 января 2010

У меня есть учетная запись с именем "admintest", роль которой - "admin".
Я вызвал следующую строку для удаления пользователя с помощью deleteAllRelatedData = false, потому что я просто хочу пометить пользователя как удаленного (возможно, мне понадобится получить историю пользователей позже)

bool result = Membership.DeleteUser("admintest", false);

После этого я вызываю следующую строку, чтобы получить пользователя:

string[] users = Roles.GetUsersInRole("admin");

Но я все еще получаю "admintest" в массиве пользователей. Что мне делать?

1 Ответ

3 голосов
/ 13 января 2010

если вы установите deleteRelatedData = true, он удалит информацию об использовании из таблицы пользователя и членства, если задано значение false, он будет удалять только информацию из таблицы членства. Другими словами, этот метод работает для аутентификации, но не для авторизации. Вы должны вызывать метод RoleProvider.RemoveUsersFromRoles ().

...