我正在使用 ASP.net 开发网站。在那里,我向用户发送了几封电子邮件。问题是所有电子邮件都在分组(线程)我想停止这个。
我发现了一个关于这个的帖子
里面说
设置 X-Entity-Ref-ID 标头(不需要值)。这就是 Google+ 通知的作用。
更改发件人电子邮件(您可以使用 From: info+randomstring@example.com)。这就是 Facebook 通知
的作用。
我不认为第二个想法是一件好事。但我想尝试第一件事。怎么做?我在哪里可以找到这个属性?
我正在使用 ASP.net 开发网站。在那里,我向用户发送了几封电子邮件。问题是所有电子邮件都在分组(线程)我想停止这个。
我发现了一个关于这个的帖子
里面说
设置 X-Entity-Ref-ID 标头(不需要值)。这就是 Google+ 通知的作用。
更改发件人电子邮件(您可以使用 From: info+randomstring@example.com)。这就是 Facebook 通知
的作用。
我不认为第二个想法是一件好事。但我想尝试第一件事。怎么做?我在哪里可以找到这个属性?
我正在使用 nuget 包 Postal 以 html 和文本格式发送电子邮件。为此,有一个电子邮件头文件(包含“发件人”和“收件人”信息)。将X-Entity-Ref-ID: HeaderIdHeaderId 为 guid 的位置添加到此文件(在From:andTo:参数之前)有效。给 X-Entity-Ref-ID 一个唯一的参考值,而不是没有值。
您可能不会使用 Postal,但这种方法也可能适用于其他包裹。
在控制器中:
var emailModel = new EmailModel()
{
To = user.UserName, // user is your User entity
// Text replacement to stop Gmail showing mailto tag
UserName = user.UserName.Replace("@", "<span>@</span>").Replace(".", "<span>.</span>"),
// HeaderId to insert a guid into X-Entity-Ref-ID header to prevent Gmail threading
HeaderId = new Guid()
};
emailModel.Send();
然后,在电子邮件头文件中:
X-Entity-Ref-ID: @Model.HeaderId // This assigns a unique value
To: @Model.To
From: ThisCo <noreply@thisco.com>
Subject: The Email Subject
Views: Text, Html
EmailModel 定义为:
public class SignupLinkEmail : Email // inheriting from the nuget Postal Email class
{
public string To { get; set; }
public string UserName { get; set; }
public Guid HeaderId { get; set; }
// other things ..
}