Files
yes.blog/Yes.Application/Admins/Users/CreateUserCommandHandler.cs
2025-04-30 09:51:36 +08:00

26 lines
831 B
C#

namespace Yes.Application.Admins.Users
{
public record CreateUserCommand(
string Name,
string Email,
string NickName,
string Password
) : IRequest<CreateUserCommandResponse>;
public record CreateUserCommandResponse(int Id);
public class CreateUserCommandHandler(BlogDbContext db) : IRequestHandler<CreateUserCommand, CreateUserCommandResponse>
{
private readonly BlogDbContext _db = db;
public async Task<CreateUserCommandResponse> Handle(CreateUserCommand request, CancellationToken cancellationToken)
{
var user = UserEntity.Create(request.Name, request.Email, request.NickName, request.Password);
await _db.Users.AddAsync(user);
await _db.SaveChangesAsync();
return new CreateUserCommandResponse(user.Id);
}
}
}