Exemple #1
0
 public void SetTo(IStorePropertyBag propertyBag, EmailAddress emailAddress)
 {
     EmailAddressProperties.SetOrDeleteValue(propertyBag, this.RoutingType, emailAddress.RoutingType);
     EmailAddressProperties.SetOrDeleteValue(propertyBag, this.Address, emailAddress.Address);
     EmailAddressProperties.SetOrDeleteValue(propertyBag, this.DisplayName, emailAddress.Name);
     EmailAddressProperties.SetOrDeleteValue(propertyBag, this.OriginalDisplayName, emailAddress.OriginalDisplayName);
 }
Exemple #2
0
        internal static bool UpdateEmailAddressProperty(ICorePropertyBag propertyBag, EmailAddressProperties emailAddressProperty)
        {
            if (!propertyBag.IsPropertyDirty(emailAddressProperty.OriginalDisplayName) || propertyBag.IsPropertyDirty(emailAddressProperty.Address))
            {
                return(false);
            }
            string valueOrDefault = propertyBag.GetValueOrDefault <string>(emailAddressProperty.RoutingType, null);

            if (!"SMTP".Equals(valueOrDefault, StringComparison.OrdinalIgnoreCase))
            {
                return(false);
            }
            string valueOrDefault2 = propertyBag.GetValueOrDefault <string>(emailAddressProperty.OriginalDisplayName, null);

            if (string.IsNullOrEmpty(valueOrDefault2))
            {
                return(false);
            }
            string valueOrDefault3 = propertyBag.GetValueOrDefault <string>(emailAddressProperty.Address, null);

            if (string.IsNullOrEmpty(valueOrDefault3))
            {
                propertyBag[emailAddressProperty.Address] = valueOrDefault2;
                return(true);
            }
            return(false);
        }