日期:2014-05-17  浏览次数:20975 次

如何用C#邮件发送图片和html格式文件(在正文中非是附件)
只会发文本邮件,不知道如何在正文中实现发html格式的和图片。谁能教教我吗?
下面是发文本格式邮件的代码:
string smtpServer = "smtp.163.com";
MailMessage message = null;
MailAddress from = new MailAddress("发送邮箱地址");
MailAddress to = new MailAddress("接收邮箱地址");
message = new MailMessage(from, to);
message.Subject = "邮件标题";
message.Body ="邮件内容";
SmtpClient client = new SmtpClient(smtpServer, 25);
client.Credentials = new System.Net.NetworkCredential("发送邮箱地址", "密码");
client.Send(message);

怎么改呢?

------解决方案--------------------

  string smtpServer = "";
        MailMessage message = null;
        MailAddress from = new MailAddress("413294344@qq.com");
        MailAddress to = new MailAddress("413294344@qq.com");
        message = new MailMessage(from, to);
        message.Subject = "邮件标题";
        System.Net.Mail.Attachment attachment = new System.Net.Mail.Attachment(@"C:\Users\Administrator\Desktop\fin_bg2.png");
        message.Attachments.Add(attachment);
        message.IsBodyHtml = true;
        message.Body += "<img src=\"cid:" + attachment.ContentId + "\"/>";
        SmtpClient client = new SmtpClient(smtpServer, 25);
        client.Credentials = new System.Net.NetworkCredential("","");
        client.Send(message);


------解决方案--------------------
html内容可以从模板(比如写到xxx.html文件)中读取,这样比拼接字符串来的好的多的多,万一你后期要修改得多麻烦
------解决方案--------------------