簡體   English   中英

使用c#html格式發送郵件

[英]Sending mail with c# html formatted

我知道有很多與此問題類似的問題,但我似乎找不到正確的答案。 所以在我的頁面中,我有CKEditorControl,我想使用其內容並將其作為文本發送。 問題在於,電子郵件將與所有標簽一起發送,並且不會呈現為將其粘貼為純文本格式。

  public class MailSender
{
    private readonly MailMessage mailMessage;
    private SmtpClient smtpClient;
    private string fromEmail = myMail;
    private string fromPass = myPass;

    public MailSender()
    {
        this.mailMessage = new MailMessage();

        this.mailMessage.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;
        this.mailMessage.BodyEncoding = Encoding.UTF8;

        this.mailMessage.From = new MailAddress(MyMail);


    }

    public void Send(string subject, string body, params string[] to)
    {
        this.mailMessage.Body = body;           
        this.mailMessage.Subject = subject;
        this.mailMessage.IsBodyHtml = true;
        foreach (var mail in to)
        {
            this.mailMessage.To.Add(mail);
        }

        using (this.smtpClient = new SmtpClient("smtp.gmail.com", 25))
        {
            this.smtpClient.EnableSsl = true;
            this.smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
            this.smtpClient.UseDefaultCredentials = false;
            this.smtpClient.Credentials = new NetworkCredential(this.fromEmail, this.fromPass);
            this.smtpClient.Send(this.mailMessage.From.ToString(), this.mailMessage.To.ToString(), this.mailMessage.Subject, this.mailMessage.Body);
        }

    }
}

這是負責發送我的電子郵件的課程。

這是我為我寫的完美作品的代碼

Default.aspx

<CKEditor:CKEditorControl ID="CKEditor1" BasePath="~/_Samples/ckeditor/" runat="server"></CKEditor:CKEditorControl>
    <asp:Button ID="SaveButton" runat="server" OnClick="SaveButton_Click" Text="Save Me" />

Default.aspx.cs

protected void SaveButton_Click(object sender, EventArgs e)
        {            
            Mail.SendMail("email@gmail.com", "cke", CKEditor1.Text);
        }

Email.cs

public static void SendMail(string To, string Subject, string Body)
        {
            MailMessage message = new MailMessage();
            message.From = new MailAddress(SmtpUserName, SmtpFrom);
            message.To.Add(new MailAddress(To));
            message.Subject = Subject;
            message.Body = Body;
            message.IsBodyHtml = true;
            message.BodyEncoding = Encoding.UTF8;
            message.SubjectEncoding = Encoding.UTF8;

            var client = new SmtpClient(SmtpAddress, SmtpPort)
            {
                Credentials = new NetworkCredential(SmtpUserName, SmtpPassword),
            };

            client.Send(message);            
        }

我失去了豐富的文本編輯器功能,粗體,斜體,顏色...,並收到了帶有粗體,斜體和彩色文本的電子郵件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM