2 Stimmen

C#.Net Nachrichten gehen in den Spam-Ordner

Ich sende E-Mails von meiner ASP.net-Webanwendung aus.

Die Mails werden erfolgreich versendet, aber die meisten landen im Spam-Ordner.

Bitte helfen Sie mir, den Spamfilter zu überwinden.

Mein Send Mail Code

public void SendMail(string FromAddress, string ToAddress, string Subject, string BodyText)
    {
        MailMessage mailMsg = new MailMessage();

        mailMsg.From = new MailAddress(FromAddress,"My Name");
        mailMsg.To.Add(new MailAddress(ToAddress));
        mailMsg.Subject = Subject;
        mailMsg.BodyEncoding = System.Text.Encoding.GetEncoding("utf-8");

        System.Net.Mail.AlternateView plainView = System.Net.Mail.AlternateView.CreateAlternateViewFromString
        (System.Text.RegularExpressions.Regex.Replace(BodyText, @"<(.|\n)*?>", string.Empty), null, "text/plain");
        System.Net.Mail.AlternateView htmlView = System.Net.Mail.AlternateView.CreateAlternateViewFromString(BodyText, null, "text/html");

        mailMsg.AlternateViews.Add(plainView);
        mailMsg.AlternateViews.Add(htmlView);

        // Smtp configuration
        SmtpClient smtp = new SmtpClient();
        smtp.Host = "smtp.mysite.com";

        smtp.Credentials = new System.Net.NetworkCredential(FromAddress, "password");
        smtp.EnableSsl = false;
        try
        {
            smtp.Send(mailMsg);
        }
        catch (Exception ex)
        {

            throw ex;
        }
    }

5voto

Stuart Blackler Punkte 3674

Eine Sache, die auffällt, ist, dass Sie nie den Körper einstellen. Ich würde diese Zeile entfernen:

// Remove the html alternate view
mailMsg.AlternateViews.Add(htmlView);

Und probieren Sie Folgendes aus (nicht getestet):

// Set the html view to be the default view, leaving the plain text view as the only alternative view
mailMsg.IsBodyHtml = true;
mailMsg.Body = htmlView;

4voto

Fischermaen Punkte 11982

E-Mails werden oft aufgrund bestimmter Wörter in der Betreffzeile, der Domäne des Absenders oder des Inhalts der E-Mail oder der Anhänge als Spam markiert. Ich glaube also nicht, dass es etwas mit dem Sendemechanismus wie c# oder .NET zu tun hat.

1voto

s1mm0t Punkte 5955

Es gibt eine ganze Reihe von Gründen, warum Ihre E-Mail als Spam markiert werden kann. Diese ist eine gute Liste darüber, wie Sie vermeiden können, dass Ihre E-Mails als Spam markiert werden. Meiner Erfahrung nach war es jedoch sinnvoller, einen Dienst wie AuthSMTP stattdessen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X