1

大家好,我尝试使用以下代码发送 HTML 电子邮件以及 HTML 中的图像,但我只能接收文本格式的邮件而不是图像

public void HTML_mail(string mailTo,string mailSub,string mailMessage)
    {
        try
        {
            SmtpClient client = new SmtpClient();
            client.DeliveryMethod = SmtpDeliveryMethod.Network;
            client.EnableSsl = true;

            //client.Host = "smtp.gmail.com";
            //client.Port = 587;


            //WITH SMTP Server with Authenticaton
            client.Host = mailServer;
            client.Port = Convert.ToInt16(serverPort);

            // setup Smtp authentication
            System.Net.NetworkCredential credentials =
                new System.Net.NetworkCredential(userName, passWord);
            client.UseDefaultCredentials = false;
            client.Credentials = credentials;

            MailMessage msg = new MailMessage();
            msg.From = new MailAddress(userName);
            msg.To.Add(new MailAddress(mailTo));

            msg.Subject = mailSub;
            msg.IsBodyHtml = true;
            msg.Body = string.Format(mailMessage);
            //HTML CODE "<html><head></head><body><p><h3>Dadu</h3></p><img src='http://localhost:2727/photo/mukeshwedsjashmin/1/Suresh2.jpg' height='500px' width='500px' alt='' /></body>"
            try
            {
                client.Send(msg);
                //lblMsg.Text = "Your message has been successfully sent.";
            }
            catch (Exception ex)
            {
                //lblMsg.ForeColor = Color.Red;
                //lblMsg.Text = "Error occured while sending your message." + ex.Message;
            }
        }
        catch(Exception ex)
        {

        }
    }

我只能在我的 gmail A/C 上选择显示图像的邮件中看到“大都”

4

2 回答 2

1

您的电子邮件正在引用本地主机图像,请尝试使用在线图像,因为电子邮件可能无法使用该图像。

于 2012-08-08T08:33:32.757 回答
1

您的电子邮件引用了本地图像:

http://localhost:2727/photo/mukeshwedsjashmin/1/Suresh2.jpg 

唯一能够看到该图像的电子邮件接收者是您自己。其他人将无法访问您的本地 Web 服务器,因此将无法看到图像。

您需要引用一个可供公众使用的图像。

作为旁注

根据我的经验,从本地邮件服务器发送这样的电子邮件,尤其是如果电子邮件包含 HTML 和图像,几乎肯定会被视为垃圾邮件。我更喜欢通过电子邮件递送服务发送我的电子邮件。我只有使用Postmark的经验,它有一个很好的 .Net 库,但我敢打赌还有其他很棒的服务。

于 2012-08-08T08:33:59.473 回答