public static ProfileAddress ProfileAddress(Profile profile, Address address, AddressType addressType, string createdBy, DateTime created, string updatedBy, DateTime updated)
        {
            ProfileAddress objProfileAddress = new ProfileAddress();

            //Set values for Address
            objProfileAddress.Created = created;
            objProfileAddress.CreatedBy = createdBy;
            objProfileAddress.Updated = updated;
            objProfileAddress.UpdatedBy = updatedBy;

            //Associate Profile for this Profile Phone
            objProfileAddress.ProfileId = profile.ProfileId;

            //Associate Address for this Profile Phone
            objProfileAddress.AddressId = address.AddressId;

            //Associate AddressTye for this Profile Phone
            objProfileAddress.AddressTypeId = addressType.AddressTypeId;

            return objProfileAddress;
        }
        /// <summary>
        /// Associate existing AddressType to this ProfileAddress
        /// </summary>
        /// <param name="addressType"></param>
        public void AssociateAddressTypeForThisProfileAddress(AddressType addressType)
        {
            if (addressType == null)
            {
                throw new ArgumentException(Messages.exception_ProfileAddressCannotAssociateNullAddressType);
            }

            //fix relation
            this.AddressTypeId = addressType.AddressTypeId;

            this.AddressType = addressType;
        }