将 headers 添加到将存在于回复中的传出 smtp 消息

Add headers to outgoing smtp message that will exist in reply

我需要在不更改主题或 body.

的情况下在外发 e-mail 与回复 e-mail 之间建立关联

我已尝试将一些 headers 添加到 SMTP 外发邮件中:

var outgoingMessage = new System.Net.Mail.MailMessage();
mail.Headers.Add("Tag","MyNewTag");
mail.Headers.Add("CorrelationID","MyNewCorrID");

不幸的是,在回复该电子邮件时 - 那些 headers 不见了。

有没有什么方法可以在不干扰主题或 body 的情况下关联传出和传入消息?

对于 header,您可能应该使用 X-headers:

mail.Headers.Add("X-Tag","MyNewTag");
mail.Headers.Add("X-CorrelationID","MyNewCorrID");

要在不干扰主题或 body 的情况下关联传出和传入消息,您还可以检查 References: header(仅回复,不转发)。

此 header 包含原始消息的 Message-ID('s):

References: <some-id@domain>

还有In-Reply-Toheader.

要添加更多信息,您甚至可以自定义传出 Message-ID

也许 Thread-Index header 也有帮助。