2009-02-12 5 views
1

J'essaie de contrôler l'ordre d'envoi des e-mails d'un site Web.Comment puis-je contrôler l'ordre dans lequel les e-mails sont envoyés à partir d'une application ASP.NET?

J'ai le code qui envoie email1 et email2 en utilisant le même mécanisme: System.Net.Mail.SmtpClient.

Les e-mails arrivent toujours dans la commande email2, email1 (même si je leur envoie email2 et email1).

J'ai essayé de définir les propriétés de délai comme suggéré ici http://forums.microsoft.com/MSDN/ShowPost.aspx?PostID=166439&.

comme celui-ci

Classe publique SmtpClientAdapter Hérite SmtpClient

Public Sub SendEmail(ByVal message As System.Net.Mail.MailMessage) 

    Host = Parameter.Data.GetString("SMTPServer") 
    message.IsBodyHtml = True 

    MyBase.ServicePoint.MaxIdleTime = 1 
    MyBase.ServicePoint.ConnectionLimit = 1 
    MyBase.Send(message) 

End Sub 

End Class

Je suis en train de découvrir est que je peux faire usage de l'en-tête SMTP livraison différée

http://tools.ietf.org/html/rfc4021#section-2.1.65

Est-ce que quelqu'un sait si je peux utiliser cet entête d'ASP.NET?

Derek

+0

Je suis d'accord que l'en-tête doit être honoré par le serveur - mais est-ce que quelqu'un sait comment définir l'en-tête et a-t-il une expérience de travail ou non? Dans un monde idéal, email2 devrait être retardé de quelques heures si nous pouvions utiliser cet en-tête. – user28584

Répondre

5

Il n'est pas la responsabilité de ASP.NETs pour gérer l'en-tête de livraison différée. C'est jusqu'au serveur SMTP auquel vous envoyez l'email pour choisir le support de cet en-tête.

D'une manière générale, vous ne pouvez pas vous attendre à contrôler la séquence de distribution des e-mails.