public static User ToUser(this dto.ApplicationUser userDto) { var result = new User() { Email = userDto.Email, Id = userDto.Id, ContactId = userDto.MemberId, PhoneNumber = userDto.PhoneNumber, UserName = userDto.UserName, StoreId = userDto.StoreId, IsRegisteredUser = true, IsAdministrator = userDto.IsAdministrator ?? false, Permissions = userDto.Permissions, AccessFailedCount = userDto.AccessFailedCount ?? 0, LockoutEnabled = userDto.LockoutEnabled ?? false, EmailConfirmed = userDto.EmailConfirmed ?? false, LockoutEndDateUtc = userDto.LockoutEndDateUtc, PasswordExpired = userDto.PasswordExpired ?? false, PasswordHash = userDto.PasswordHash, SecurityStamp = userDto.SecurityStamp, UserState = EnumUtility.SafeParse(userDto.UserState, AccountState.Approved), UserType = userDto.UserType, TwoFactorEnabled = userDto.TwoFactorEnabled ?? false, PhoneNumberConfirmed = userDto.PhoneNumberConfirmed ?? false, }; if (!userDto.Roles.IsNullOrEmpty()) { result.Roles = userDto.Roles.Select(x => new Role { Id = x.Id, Name = x.Name, Description = x.Description }); } if (!userDto.Logins.IsNullOrEmpty()) { result.ExternalLogins = userDto.Logins.Select(x => new ExternalUserLoginInfo { LoginProvider = x.LoginProvider, ProviderKey = x.ProviderKey }).ToList(); } return(result); }
public static dto.ApplicationUser ToUserDto(this User user) { var result = new dto.ApplicationUser { Id = user.Id, Email = user.Email, Password = user.Password, UserName = user.UserName, StoreId = user.StoreId, MemberId = user.Contact?.Id ?? user.ContactId, AccessFailedCount = user.AccessFailedCount, EmailConfirmed = user.EmailConfirmed, LockoutEnabled = user.LockoutEnabled, LockoutEndDateUtc = user.LockoutEndDateUtc, TwoFactorEnabled = user.TwoFactorEnabled, SecurityStamp = user.SecurityStamp, PasswordHash = user.PasswordHash, UserState = user.UserState.ToString(), UserType = user.UserType, IsAdministrator = user.IsAdministrator, PhoneNumber = user.PhoneNumber, PhoneNumberConfirmed = user.PhoneNumberConfirmed, }; if (!user.Roles.IsNullOrEmpty()) { //Need to convert role names to the registered in the platform roles entities result.Roles = user.Roles.Select(ToRoleDto).ToList(); } if (!user.ExternalLogins.IsNullOrEmpty()) { result.Logins = user.ExternalLogins.Select(x => new dto.ApplicationUserLogin { LoginProvider = x.LoginProvider, ProviderKey = x.ProviderKey }).ToList(); } return(result); }