C# 如何在不发送垃圾邮件的情况下发送电子邮件

C# 如何在不发送垃圾邮件的情况下发送电子邮件,c#,asp.net,email,C#,Asp.net,Email,上面是我用来通过smtp发送电子邮件的功能,但我意识到所有邮件都位于我的垃圾邮件文件夹(Gmail)中。有什么办法可以解决这个问题吗 IsBodyHTML标记为true,但您只提供text/html。您只需要包含一个带有文本的备用视图 mail2.Body=“你好” 确保您使用的邮件发件人和收件人地址或地址不相同 MailMessage mail2=新的MailMessage(mailFrom,mailTo) 更新 MailAddress mailFrom = new MailA

上面是我用来通过smtp发送电子邮件的功能,但我意识到所有邮件都位于我的垃圾邮件文件夹(Gmail)中。有什么办法可以解决这个问题吗

  • IsBodyHTML
    标记为true,但您只提供text/html。您只需要包含一个带有文本的备用视图

    mail2.Body=“你好”

  • 确保您使用的邮件发件人和收件人地址或地址不相同

    MailMessage mail2=新的MailMessage(mailFrom,mailTo)

  • 更新

            MailAddress mailFrom = new MailAddress("test@smtp.com");
            MailAddress mailTo = new MailAddress("tester@gmail.com");
            MailMessage mail2 = new MailMessage(mailFrom, mailTo);
            mail2.IsBodyHtml = true;
            SmtpClient client = new SmtpClient();
            client.Port = 25;
            client.Host = "xxx.xx.xx.xxx"; // smtp host ip
            mail2.Subject = "Testing.";
            mail2.Body = "Hello";
            mail2.SubjectEncoding = System.Text.Encoding.UTF8;
            mail2.BodyEncoding = System.Text.Encoding.UTF8;
            client.Send(mail2);
    
  • IsBodyHTML
    标记为true,但您只提供text/html。您只需要包含一个带有文本的备用视图

    mail2.Body=“你好”

  • 确保您使用的邮件发件人和收件人地址或地址不相同

    MailMessage mail2=新的MailMessage(mailFrom,mailTo)

  • 更新

            MailAddress mailFrom = new MailAddress("test@smtp.com");
            MailAddress mailTo = new MailAddress("tester@gmail.com");
            MailMessage mail2 = new MailMessage(mailFrom, mailTo);
            mail2.IsBodyHtml = true;
            SmtpClient client = new SmtpClient();
            client.Port = 25;
            client.Host = "xxx.xx.xx.xxx"; // smtp host ip
            mail2.Subject = "Testing.";
            mail2.Body = "Hello";
            mail2.SubjectEncoding = System.Text.Encoding.UTF8;
            mail2.BodyEncoding = System.Text.Encoding.UTF8;
            client.Send(mail2);
    

    尝试此操作并还原。

     mail2.IsBodyHtml = true;
            SmtpClient client = new SmtpClient();
            client.Port = 25;
            client.Host = "xxx.xx.xx.xxx"; // smtp host ip
            mail2.Subject = "Testing.";
            mail2.Body = "Hello";
            string html = "html";
            // here is example to user AlternateViews 
    
            mail2.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(html, new System.Net.Mime.ContentType("text/html"));
            string Plaintext ="plain text";
            mail2.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(Plaintext, new System.Net.Mime.ContentType("text/plain"));
            mail2.SubjectEncoding = System.Text.Encoding.UTF8;
            mail2.BodyEncoding = System.Text.Encoding.UTF8;
            client.Send(mail2);
    
    string邮件服务器;
    国际港口;
    字符串mailId,mailPass;
    字符串主题;
    字符串mailTo;
    subject=“某物”;
    StringBuilder邮件体=新建StringBuilder();
    mailTo=”someone@gmail.com";
    mailServer=“smtp.gmail.com”;
    mailId=”something@gmail.com";
    myString.Length=0;
    附加(“正文内容”);
    mailPass=“xxxxxx”;
    端口=587;
    MailMessage mail=新的MailMessage(mailId,mailTo,subject,myString.ToString());
    mail.IsBodyHtml=true;
    SmtpClient smtp=新SmtpClient(邮件服务器,端口);
    System.Net.NetworkCredential nc=新的System.Net.NetworkCredential(mailId,mailPass);
    smtp.UseDefaultCredentials=false;
    smtp.Credentials=nc;
    smtp.EnableSsl=true;
    smtp.DeliveryMethod=SmtpDeliveryMethod.Network;
    smtp.发送(邮件);
    
    尝试此操作并还原。

     mail2.IsBodyHtml = true;
            SmtpClient client = new SmtpClient();
            client.Port = 25;
            client.Host = "xxx.xx.xx.xxx"; // smtp host ip
            mail2.Subject = "Testing.";
            mail2.Body = "Hello";
            string html = "html";
            // here is example to user AlternateViews 
    
            mail2.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(html, new System.Net.Mime.ContentType("text/html"));
            string Plaintext ="plain text";
            mail2.AlternateViews.Add(AlternateView.CreateAlternateViewFromString(Plaintext, new System.Net.Mime.ContentType("text/plain"));
            mail2.SubjectEncoding = System.Text.Encoding.UTF8;
            mail2.BodyEncoding = System.Text.Encoding.UTF8;
            client.Send(mail2);
    
    string邮件服务器;
    国际港口;
    字符串mailId,mailPass;
    字符串主题;
    字符串mailTo;
    subject=“某物”;
    StringBuilder邮件体=新建StringBuilder();
    mailTo=”someone@gmail.com";
    mailServer=“smtp.gmail.com”;
    mailId=”something@gmail.com";
    myString.Length=0;
    附加(“正文内容”);
    mailPass=“xxxxxx”;
    端口=587;
    MailMessage mail=新的MailMessage(mailId,mailTo,subject,myString.ToString());
    mail.IsBodyHtml=true;
    SmtpClient smtp=新SmtpClient(邮件服务器,端口);
    System.Net.NetworkCredential nc=新的System.Net.NetworkCredential(mailId,mailPass);
    smtp.UseDefaultCredentials=false;
    smtp.Credentials=nc;
    smtp.EnableSsl=true;
    smtp.DeliveryMethod=SmtpDeliveryMethod.Network;
    smtp.发送(邮件);
    
    使用System.Net.NetworkCredential和有效的mailID和password答案仍然相同。您实际使用的是
    test@smtp.com
    作为发件人地址?域smtp.com使用SPF声明所有发件人(不使用其已接受服务器列表)应软失败,这意味着他们声明“任何声称从*@smtp.com从未经授权的服务器发送的人都应标记为坏/垃圾邮件”。请使用System.Net.NetworkCredential和有效的mailID和密码。答案仍然相同。您是否实际使用
    test@smtp.com
    作为发件人地址?域smtp.com使用SPF声明所有发件人(不使用其已接受服务器列表)应软失败,这意味着他们声明“任何声称从*@smtp.com从未经授权的服务器发送的人都应标记为坏/垃圾邮件”。如何包含包含文本的备用视图?结果仍然相同。添加了包含html和文本的备用视图。仍然不走运。我也没有解决方案如何包含带有文本的备用视图?结果仍然相同。添加了带有html和文本的备用视图。还是没有运气。也没有办法为梅更新答案。请检查并回复。我更新了答案。请检查并恢复。