private static Email ConvertContactPointToEmail(ContactPoint contactPoint) { return(new Email { Address = contactPoint.Value, IsPrimary = contactPoint.Rank.HasValue ? contactPoint.Rank == 1 : (bool?)null, Description = contactPoint.GetStringExtension(HealthVaultExtensions.Description), }); }
private static Phone ConvertContactPointToPhone(ContactPoint contactPoint) { return(new Phone { Number = contactPoint.Value, IsPrimary = contactPoint.Rank.HasValue ? contactPoint.Rank == 1 : (bool?)null, Description = contactPoint.GetStringExtension(HealthVaultExtensions.Description), }); }
public static T ToHealthVault <T>(this ContactPoint contactPoint) where T : new() { var result = new T(); switch (result) { case Email email: email.Address = contactPoint.Value; email.IsPrimary = contactPoint.Rank.HasValue ? contactPoint.Rank == 1 : (bool?)null; email.Description = contactPoint.GetStringExtension(HealthVaultExtensions.Description); break; case Phone phone: phone.Number = contactPoint.Value; phone.IsPrimary = contactPoint.Rank.HasValue ? contactPoint.Rank == 1 : (bool?)null; phone.Description = contactPoint.GetStringExtension(HealthVaultExtensions.Description); break; default: throw new NotSupportedException($"Transformation from {contactPoint.GetType()} to {typeof(T)} is not supported"); } return(result); }