/// <summary> /// Converts an AspNetUser Models object to an AspNetUser DTO Object and passes the AspNetUser DTO /// along with the userId to the SaveUser Method in DAL for saving. /// </summary> /// <param name="user">AspNetUser Models object.</param> /// <param name="userId">UserId of the user saving the AspNetUser.</param> /// <returns>AspNetUser Models object.</returns> public AspNetUser SaveUser(AspNetUser user, string userId) { var aspNetUserDTO = new DTO.AspNetUserDTO() { Id = user.Id, FirstName = user.FirstName, Location = user.Location, LastName = user.LastName, Email = user.Email, PhoneNumber = user.PhoneNumber, DateOfBirth = user.DateOfBirth, PasswordHash = user.PasswordHash, UserName = user.UserName, }; var result = this._dataService.SaveUser(aspNetUserDTO, userId); if (user.UserRoles != null) { var roles = user.UserRoles; foreach (var userRole in roles) { _dataService.CreateAspNetUserRolesRecord(result.Id, userRole); } } return(MapEFToModel(result)); }