zoukankan      html  css  js  c++  java
  • 邮件系列(二)-发送邮件

    通过上一篇配置本地邮件服务器,已经实现了手动发送,接收邮件的功能。

    接下来,我们就试试用代码实现发邮件。

    我们都知道,邮件一般包括,发件人,收件人,邮件服务器,邮件。那么我们就按照这个思路来写代码

    1.发送一封简单的邮件

    private static void SendSimpleMail()
    {
        //1.创建一封邮件对象
        MailMessage mail=new MailMessage();
        mail.Subject = "我是邮件的主题";
        mail.SubjectEncoding = Encoding.UTF8;
        mail.Body = "我是邮件的正文";
        mail.BodyEncoding = Encoding.UTF8;
        //发件人
        mail.From=new MailAddress(lisi@163.com,"李小四");
        //收件人
        mail.To.Add(new MailAddress(wangwu@163.com,"王小五"));
        //2.创建一个发送邮件的类
        SmtpClient client=new SmtpClient("127.0.0.1");
        client.Credentials=new NetworkCredential("lisi@163.com","lisi");
        client.Send(mail);
        Console.WriteLine("ok");
    }

    在Foxmail中如下图

    image

    查看邮件源码

    image

    2.发送一封带html的邮件

    private static void SendHtmlMail()
    {
        //1.创建一封邮件对象
        MailMessage mail = new MailMessage();
        mail.Subject = "我是邮件的主题";
        mail.SubjectEncoding = Encoding.UTF8;
        mail.Body = "我是邮件的正文";
        mail.BodyEncoding = Encoding.UTF8;
        //发件人
        mail.From = new MailAddress("lisi@163.com", "李四");
        //收件人
        mail.To.Add(new MailAddress("wangwu@163.com", "王五"));
        //-----------------------------------------------------------
    
        //设置该邮件的格式为html
        AlternateView htmlBody = AlternateView.CreateAlternateViewFromString(
            "你好<font colof='red' size=7>中国</font><hr/>", null, "text/html");
        //将该html内容添加 到邮件中
        mail.AlternateViews.Add(htmlBody);
    
        //-----------------------------------------------------------
        //2.创建一个发送邮件的类
        SmtpClient client = new SmtpClient("127.0.0.1");
        client.Credentials = new NetworkCredential("lisi@163.com", "lisi");
        client.Send(mail);
        Console.WriteLine("ok");
    }

    在Foxmail中如下图

    image

    3.发送一封带显示图片的邮件

    private static void SendMailWithImg()
    {
        //1.创建一封邮件对象
        MailMessage mail = new MailMessage();
        mail.Subject = "我是邮件的主题";
        mail.SubjectEncoding = Encoding.UTF8;
        mail.Body = "我是邮件的正文";
        mail.BodyEncoding = Encoding.UTF8;
        //发件人
        mail.From = new MailAddress("lisi@163.com", "李四");
        //收件人
        mail.To.Add(new MailAddress("wangwu@163.com", "王五"));
        //-----------------------------------------------------------
        //设置邮件格式为html,将img标签设置到html中
        AlternateView htmlBody =
           AlternateView.CreateAlternateViewFromString("<img src='cid:aa' width='100px' height='100px'/>", null,
               "text/html");
        //创建一个链接资源,
        LinkedResource lr=new LinkedResource("h:/1.jpg","image/gif");
        //设置此链接资源MIME内容ID
        lr.ContentId = "aa";
        //将该链接资源添加到html中
        htmlBody.LinkedResources.Add(lr);
        //将html内容添加到邮件中
        mail.AlternateViews.Add(htmlBody);
    
        //-----------------------------------------------------------
        //2.创建一个发送邮件的类
        SmtpClient client = new SmtpClient("127.0.0.1");
        client.Credentials = new NetworkCredential("lisi@163.com", "lisi");
        client.Send(mail);
        Console.WriteLine("ok");
    }

    在Foxmail中如下图

    image

    4.发送一封带附件的邮件

    private static void SendMailWithAttachment()
    {
        //1.创建一封邮件对象
        MailMessage mail = new MailMessage();
        mail.Subject = "我是邮件的主题";
        mail.SubjectEncoding = Encoding.UTF8;
        mail.Body = "我是邮件的正文";
        mail.BodyEncoding = Encoding.UTF8;
        //发件人
        mail.From = new MailAddress("lisi@163.com", "李四");
        //收件人
        mail.To.Add(new MailAddress("wangwu@163.com", "王五"));
        //-----------------------------------------------------------
        //添加附件
        Attachment a1=new Attachment(@"h:/1.jpg");
        Attachment a2=new Attachment(@"h:/1.rar");
        Attachment a3=new Attachment(@"h:/1.docx");
    
        mail.Attachments.Add(a1);
        mail.Attachments.Add(a2);
        mail.Attachments.Add(a3);
        //-----------------------------------------------------------
        //2.创建一个发送邮件的类
        SmtpClient client = new SmtpClient("127.0.0.1");
        client.Credentials = new NetworkCredential("lisi@163.com", "lisi");
        client.Send(mail);
        Console.WriteLine("ok");
    }

    在Foxmail中如下图

    image

    更多精彩内容请看:http://www.cnblogs.com/2star
  • 相关阅读:
    Android 编程下 Eclipse 恢复被删除的文件
    Android 编程下背景图片适配工具类
    Android 编程下 Managing Your App's Memory
    Android 编程下代码之(QQ消息列表滑动删除)
    Android 编程下 Canvas and Drawables
    Android 编程下 AlarmManager
    Android 编程下去除 ListView 上下边界蓝色或黄色阴影
    Java 编程下字符串的 16 位、32位 MD5 加密
    C#枚举类型和int类型相互转换
    MVC和普通三层架构的区别
  • 原文地址:https://www.cnblogs.com/kimisme/p/4360939.html
Copyright © 2011-2022 走看看