Skip to content

Instantly share code, notes, and snippets.

@pazteddy
Last active October 17, 2025 21:36
Show Gist options
  • Select an option

  • Save pazteddy/0a5f170a29b2e017deeead6bb4b37abe to your computer and use it in GitHub Desktop.

Select an option

Save pazteddy/0a5f170a29b2e017deeead6bb4b37abe to your computer and use it in GitHub Desktop.
Instrucciones para la tarea de eliminar un rol
/*
=============
🏆 Ejercicio
=============
*/
// 1. Agregar el siguiente método a la interfaz IUserService:
//
// - RemoveRoleFromUserAsync
// → Recibe un userId y un roleName,
// y elimina el rol del usuario indicado de forma asíncrona.
//
// 2. Implementar el método RemoveRoleFromUserAsync en UserService:
//
// - Buscar el usuario por su ID.
// - Verificar si el rol existe.
// - Eliminar el rol del usuario usando RemoveFromRoleAsync.
// - Si falla, lanzar una excepción.
//
// 3. Crear la carpeta "RemoveRoleFromUser"
// dentro de "TechNotes.Application/Users".
//
// - Crear un archivo RemoveRoleFromUserCommand.cs
// → Define una clase que implemente ICommand.
// → Contiene las propiedades:
// - string UserId
// - string RoleName
//
// - Crear un archivo RemoveRoleFromUserCommandHandler.cs
// → Define un handler que implemente
// ICommandHandler<RemoveRoleFromUserCommand>.
// → Recibe IUserService por inyección de dependencias.
// → En el método Handle,
// llama a RemoveRoleFromUserAsync
// y retorna Result.Ok() si tiene éxito.
// → Si ocurre una excepción,
// retornar Result.Fail con el mensaje.
//
// 4. Desde el componente `UserRolesModal.razor`:
//
// - Usar el comando RemoveRoleFromUserCommand
// con `Sender.Send(...)`
// cuando se presione el botón "x Eliminar" junto a un rol.
// - Luego, recargar la lista de roles con LoadUserRoles().
//
// 5. Agregar la importación del comando en `_Imports.razor`:
// → @using TechNotes.Application.Users.RemoveRoleFromUser
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment