Esempio n. 1
0
 public override void AddUsersToRoles(string[] usernames, string[] roleNames)
 {
     _logger.Debug("{0}.{1}", nameof(GuRoleProvider), nameof(AddUsersToRoles));
     try
     {
         using (GuProviderContext context = new GuProviderContext())
         {
             foreach (var userName in usernames)
             {
                 foreach (var roleName in roleNames)
                 {
                     if (!context.NET_GU_PERFILUSUARIO.Any(pu => pu.NET_GU_AUTORIZACION.USUARIO == userName && pu.NET_GU_DESCRIPCIONPERFIL.DESCRIPCION == roleName))
                     {
                         var ud = context.NET_GU_AUTORIZACION.SingleOrDefault(a => a.USUARIO == userName);
                         var rd = context.NET_GU_DESCRIPCIONPERFIL.SingleOrDefault(b => b.DESCRIPCION == roleName);
                         if (ud == null || rd == null) throw new ArgumentException("Datos no validos");
                         context.NET_GU_PERFILUSUARIO.Add(new NET_GU_PERFILUSUARIO()
                         {
                             ID_USUARIO = ud.ID_USUARIO,
                             ID_PERFIL = rd.ID_PERFIL,
                             ID_ORGANISMO = 0,
                             FECHA_CREACION = DateTime.Now,
                             FECHA_MODIFICACION = DateTime.Now,
                             NOTAS = string.Empty
                         });
                         context.SaveChanges();
                     }
                 }
             }
         }
     }
     catch (Exception e)
     {
         _logger.Error(e, "Error en AddUsersToRoles: ");
         throw;
     }
 }
Esempio n. 2
0
 public override void RemoveUsersFromRoles(string[] usernames, string[] roleNames)
 {
     _logger.Debug("{0}.{1}", nameof(GuRoleProvider), nameof(RemoveUsersFromRoles));
     try
     {
         using (GuProviderContext context = new GuProviderContext())
         {
             foreach (var userName in usernames)
             {
                 foreach (var roleName in roleNames)
                 {
                     var urd = context.NET_GU_PERFILUSUARIO.SingleOrDefault(pu => pu.NET_GU_AUTORIZACION.USUARIO == userName
                         && pu.NET_GU_DESCRIPCIONPERFIL.DESCRIPCION == roleName);
                     if (urd != null)
                     {
                         context.NET_GU_PERFILUSUARIO.Remove(urd);
                         context.SaveChanges();
                     }
                 }
             }
         }
     }
     catch (Exception e)
     {
         _logger.Error(e, "Error en RemoveUsersFromRoles: ");
         throw;
     }
 }