【发布时间】:2018-05-03 03:02:24
【问题描述】:
我的目标是向现有的MailItem mailItem 添加/删除收件人。
我添加 newEmailAdress ("some.one@corp.com"):
mailItem.To += "some.one@corp.com";
然后我解析收件人,以便用户看起来更好(例如为内部联系人显示 Skype 状态)。
mailItem.Recipients.ResolveAll();
它适用于其中的一半。对于某些人,如果我查看mailItem.To,电子邮件字符串已更改为联系人姓名(“Some One”),并且该联系人不在mailItem.Recipients 中。但是它们显示为已解决(例如,它们具有 Skype 状态,或者具有(联系)外部状态)。
因此,对于一半的接收者来说,它以某种方式解决了一半。我找不到任何逻辑,一些内部联系人有效,而另一些则无效,对于外部收件人也是如此......
Google 帮不上什么忙。我将暂时停用 ResolveAll,以便我的工具可以继续工作,但不胜感激!
上下文:
要添加/删除收件人,
我处理直接添加到
mailItem.To的电子邮件,使用简单的mailItem.To.Contains(newEmailAdress)检查以避免重复,并使用mailItem.Replace(newEmailAdress, "")删除。工作正常。然后我想处理已解决或直接作为收件人输入的联系人。我通过
mailItem.Recipients,使用PropertyAcessor转换电子邮件地址,然后只是与newMailAdress进行比较。这就是我发现有些问题解决了一半的原因。
【问题讨论】: