我已经成功地使用SmtpReceiveAgent
创建了一个OnEndOfDataEvent
。它应该替换某些电子邮件的发件人,以便收件人看到新的发件人并能够对其进行回复。
通过设置,这已经很好用了:
MailItem.Message.From = new EmailRecipient(DisplayName, Address);
似乎也没有必要设置以下位置,就像在我发现的许多示例中一样:
MailItem.Message.Sender = new EmailRecipient(DisplayName, Address);
MailItem.FromAddress = new RoutingAddress(Address);
我能够设置任何随机的不存在或外部地址,或同一公司/域中其他用户的任何现有地址。
但是,当该用户存在于我们的系统中,并且不是它的主要地址时,它将被主要地址替换。但这正是我想要的:使用备用地址...该如何解决?
不知道为什么会这样,但是当我更换SmtpReceiveAgent
和OnEndOfDataEvent
由RoutingAgent
和OnCategorizedMessage
,它刚刚开始工作,没有其他更改。
我现在还添加了设置MailItem.FromAddress
,因此Return-Path
标头已正确受到影响。