コード例 #1
0
        public static User parseUserDTO(UserDTO userDTO, string phoneRegion, string defaultNationality)
        {
            Name name = new Name()
            {
                Title = userDTO.Name?.Title,
                First = userDTO.Name?.First,
                Last  = userDTO.Name?.Last
            };
            Coordinates coordinates = new Coordinates()
            {
                Latitude  = Convert.ToDecimal(userDTO.Location?.Coordinates?.Latitude),
                Longitude = Convert.ToDecimal(userDTO.Location?.Coordinates?.Longitude)
            };
            Timezone timezone = new Timezone()
            {
                Offset      = userDTO.Location?.Timezone?.Offset,
                Description = userDTO.Location?.Timezone?.Description
            };
            Location location = new BrazilianLocation()
            {
                Street      = userDTO.Location?.Street,
                City        = userDTO.Location?.City,
                Postcode    = userDTO.Location?.PostalCode,
                State       = userDTO.Location?.State,
                Coordinates = coordinates,
                Timezone    = timezone
            };
            Picture picture = new Picture()
            {
                Large     = userDTO.Picture?.Large,
                Medium    = userDTO.Picture?.Medium,
                Thumbnail = userDTO.Picture?.Thumbnail
            };

            return(new User()
            {
                Email = userDTO.Email,
                Gender = userDTO.Gender,
                Name = name,
                TelephoneNumbers = PhoneUtil
                                   .RetrieveValidPhoneNumbers(new List <string>()
                {
                    userDTO.Phone ?? ""
                }, phoneRegion)
                                   .Select(PhoneUtil.ConvertToE164Format),
                MobileNumbers = PhoneUtil
                                .RetrieveValidPhoneNumbers(new List <string>()
                {
                    userDTO.CellPhone ?? ""
                }, phoneRegion)
                                .Select(PhoneUtil.ConvertToE164Format),
                Registered = userDTO.Registered?.Date,
                Birthday = userDTO.Birth?.Date,
                Picture = picture,
                Nationality = defaultNationality,
            });
        }