Пример #1
0
        public override Object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, Object value)
        {
            if (value == null)
            {
                return(null);
            }
            var coll = new MessageAddressCollection();

            if (value is String)
            {
                String strVal = value.ToString();
                var    ma     = new MessageAddress(strVal);
                coll.Add(ma);
                return(coll);
            }
            else if (value is MessageAddress)
            {
                coll.Add(value as MessageAddress);
                return(coll);
            }
            else if (value is MessageAddressCollection)
            {
                return(value);
            }
            throw new MessagingException($"Invalid value '{value}' for MessageAddressCollectionConverter");
        }
Пример #2
0
        async Task <MessageAddressCollection> ResolveCollectionAsync(MessageAddressCollection coll, MessageResolver resolver)
        {
            var newColl = new MessageAddressCollection();

            foreach (var addr in coll)
            {
                var na = new MessageAddress(await resolver.ResolveAsync(this, addr.Address), await resolver.ResolveAsync(this, addr.DisplayName));
                newColl.Add(na);
            }
            return(newColl);
        }