public async Task <CreateIdentityResult> CreateAsync(string firstName, string lastName, string email, string phoneNumber) { var identity = new Identity { IdentityId = Guid.NewGuid(), Created = DateTimeOffset.Now, Email = email, EmailConfirmed = false, GivenName = firstName, Surname = lastName, PhoneNumber = phoneNumber, PhoneNumberConfirmed = false, Updated = DateTimeOffset.Now }; try { await _identityStorage.CreateAsync(identity); } catch (IdentityAlreadyExistException e) { _log.LogWarning(0, e, $"Identity {identity.Email} already exist from address {_httpContextAccessor.HttpContext.Connection.RemoteIpAddress}"); return(CreateIdentityResult.AlreadyExist()); } _log.LogInformation($"New identity created for email {identity.Email}, with name {identity.GivenName}, {identity.Surname} and phone number {identity.PhoneNumber}"); return(CreateIdentityResult.Success(identity)); }
public async Task <string> Handle(CreateRoleCommand request, CancellationToken cancellationToken) { ApplicationRole role = ConvertToApplicationRole(request); IIdentityResult identityResult = await _roleStorage .CreateAsync(role) .ConfigureAwait(false); identityResult.ThrowIfFailed(); return(role.Id); }