Membership.DeleteUser (UserName, true) не удаляет пользователя из роли

Когда я нажимаю кнопку« удалить », он может удалить все Информация о пользователе из моей таблицы «UserDetail» в моем «JobPost.mdf», она также удаляет соответствующие «aspnet_Users» и «aspnet_Membership», но «UserInRole» по-прежнему содержит это имя пользователя. Несмотря на то, что я указал код: Membership.DeleteUser (UserName, true);

, я думал, что true для данных, связанных с bool deleteall, но на самом деле это не удаляет userInRole. Поэтому в следующий раз, когда пользователь зарегистрируется с тем же именем, он автоматически получит право на роль «admin».

Я храню эту страницу «deleteUser» в защищенной папке «admin».

Как решить эту проблему? Почему Membership.DeleteUser (UserName, true) не удаляет UserInRole?

protected void GridView2_RowCommand(object sender, GridViewCommandEventArgs e)
{
     if (e.CommandName == "Delete")
     {
         string UserName = e.CommandArgument.ToString();
         Membership.DeleteUser(UserName, true);
         JobPostDataContext db = new JobPostDataContext();
         var query = from u in db.UserDetails
                     where u.UserName == UserName
                     select u;
         foreach (var item in query)
         {
             db.UserDetails.DeleteOnSubmit(item);
         }
         db.SubmitChanges();

         FormsAuthentication.SignOut();    
     }
 }

Мой web.config внутри защищенной папки администратора:

<configuration xmlns="http://schemas.microsoft.com/.NetConfiguration/v2.0">
    <system.web>
       <authorization>
            <allow roles="Administrators" />
            <deny users="*" />
        </authorization>
    </system.web>
</configuration>
7
задан abatishchev 26 March 2011 в 17:00
поделиться