C#.Net Messages are going to spam folder

て烟熏妆下的殇ゞ 提交于 2019-12-30 07:26:46

问题


I am sending email from my ASP.net web application.

The mails are sending successfully with out fail but most of them are going to spam folder.

Please help me to over come spam filter.

My 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;
        }
    } 

回答1:


One thing that stands out is that you are never setting the body. I would remove this line:

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

And try the following (Untested):

// 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;



回答2:


Mails are often marked as spam due to special words in the subject, the sender's domain or the content of the mail or the attaches. So I don't think it has anything to do with the sending mechanism like c# or .NET




回答3:


There are a whole number of reasons why your email may be marked as spam. This is a good list of how to try to avoid having your emails marked as spam. In my experience though it has been wasier to use a service such as AuthSMTP instead.



来源:https://stackoverflow.com/questions/8079902/c-net-messages-are-going-to-spam-folder

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!