public async Task <ServiceResultModel <IdentityResult> > RegisterUser(UserRegisterPostModel model, IFormFile file) { var result = new ServiceResultModel <IdentityResult>(); var errorMessage = ValidateUserData(model.Email, model.Username, null); if (errorMessage != null) { result.Error = true; result.ErrorMessage = errorMessage; } else { var user = new ApplicationUser { UserName = model.Username, Email = model.Email, FullName = model.FullName, CreatedAt = DateTime.Now, Phone = model.Phone, Address = model.Address, Avatar = model.Avatar != null ? model.Avatar : await fileService.GenerateFileSource(file, userAvatarsFolderName, model.Username.ToLower()), City = model.City, Country = model.Country, PostalCode = model.PostalCode, }; result.DataResult = await userManager.CreateAsync(user, model.Password); result.SuccessMessage = UserMessages.AccountSuccessfullyCreate(model.Username); } return(result); }
public async Task <ServiceResultModel <bool> > RegisterUser(UserRegisterPostModel model, string currentUserUsername) { var result = new ServiceResultModel <bool>(); var errorMessage = ValidateUserData(model.Email, model.Username, currentUserUsername); if (errorMessage != null) { result.Error = true; result.ErrorMessage = errorMessage; } else { var user = new ApplicationUser { UserName = model.Username, Email = model.Email, FirstName = model.FirstName, LastName = model.LastName, CreatedAt = DateTime.Now, Avatar = model.AvatarFile == null ? null : await fileService.GenerateFile(model.AvatarFile, model.Username, null), }; var registerResult = await userManager.CreateAsync(user, model.Password); if (registerResult.Succeeded) { result.DataResult = true; result.SuccessMessage = UserMessages.AccountSuccessfullyCreate(model.Username); } } return(result); }