下面是在HTML文档中应用作为附件的图像的演示代码。
//declare
MessageBuilder builder;
MailMessage.Message message;
builder = new HtmlMessageBuilder();
builder.Subject = "Alternative Test";
builder.Body = "<body><table><tr><td><b>Here is an embedded IMAGE:<img src=\"cid:img@001\"></td></tr>\r\n<tr><td>Here's another: <img src=\"cid:img@002\"></td></tr></table></body>";
builder.AddImage(@"c:\a1.jpg", "img@001");
builder.AddImage(@"c:\a2.jpg", "img@002");
//create message
message = builder.ToMessage();
MessageBuilder builder;
MailMessage.Message message;
builder = new HtmlMessageBuilder();
builder.Subject = "Alternative Test";
builder.Body = "<body><table><tr><td><b>Here is an embedded IMAGE:<img src=\"cid:img@001\"></td></tr>\r\n<tr><td>Here's another: <img src=\"cid:img@002\"></td></tr></table></body>";
builder.AddImage(@"c:\a1.jpg", "img@001");
builder.AddImage(@"c:\a2.jpg", "img@002");
//create message
message = builder.ToMessage();
其他功能
自动回复,如果希望别人在收到你的信件后发送回复邮件,可使用Notification属性:
MailMessage.Message message;
message = new MailMessage.Message();
message.Notification = true
message = new MailMessage.Message();
message.Notification = true
根据邮件文件创建新邮件,参见以下代码
MailMessage.Message message;
message = MailMessage.Message.FromFile(@"c:\mail.eml");
message = MailMessage.Message.FromFile(@"c:\mail.eml");
使用自定义头部消息, Message的头部信息可以由用户自定义,以便于某些程序作特殊处理,请参照以下代码:
MailMessage.Message message;
message = new MailMessage.Message();
message.Headers["X-Flag"] = "1";
message = new MailMessage.Message();
message.Headers["X-Flag"] = "1";
更多的服务认证方式,一般情况下,Smtp服务器不需要进行用户身份认证,但是某些服务器为了增强服务器的安全,需要对发送者进行身份确认。对于大多数服务器而言仅提供Login 或Login Plain命令进行认证,这种认证一般使用明码或简单的使用Base64编码处理用户名和密码,并不十分安全。对于某些高级的Smtp服务器可以提供更高级别的用户认证,除了Login和Login Plain以外,Snake.Net还支持CramMD5和DigestMD5两种高级认证方式。
SmtpServer server;
server = new SmtpServer("smtp.mailserver.com", "user", "password");
server.AuthMode = SmtpServerAuthMode.CramMD5;
server = new SmtpServer("smtp.mailserver.com", "user", "password");
server.AuthMode = SmtpServerAuthMode.CramMD5;