首页蓝耳朵|小小蓝耳朵广州图书馆外文室英语儿童读物资源介绍网佛教青年之友旧版收集永硕E盘Phonics Short Vowels Game 
发送无附件邮件
所属栏目:ASP.NET(webform)  时间:2009-05-22 13:17  作者:狼子

这个方法用于发送无附件邮件,用到命名空间:System.Net.Mail

#region 发送邮件
    /// <summary>
    /// 狼子,20090522 am 发送无附件邮件
    /// </summary>
    /// <param name="toEmail">收件人邮箱</param>
    /// <param name="subject">邮件标题</param>
    /// <param name="emailBody">邮件内容</param>
    /// <returns></returns>
    private string SendMail(string toEmail, string subject, string emailBody)
    {
        string sendResult = null;

        //设置邮件服务器、发件人用户名、发件人密码、发件人用户名
        string server, fromEmail, fromPws, fromUser;
        int port = 25;
        bool needEnableSsl = false;

        server = "邮件服务器";
        port = 端口号;
        fromUser = "发件人登录邮箱的用户名";
        fromEmail = "发件人邮箱";
        fromPws = "发件人登录邮箱的密码";
        needEnableSsl = true/false;

        //创建SMTP对象
        SmtpClient client = new SmtpClient(server, port);
        if (needEnableSsl)
        {
            client.EnableSsl = true;            //使用SSL加密
        }

        //设置认证信息
        client.UseDefaultCredentials = true;
        client.Credentials = new System.Net.NetworkCredential(fromUser, fromPws);

        //创建邮件对象
        MailMessage mail = new MailMessage(fromEmail, toEmail, subject, emailBody);

        //设置邮件编码
        mail.SubjectEncoding = System.Text.Encoding.UTF8;
        mail.BodyEncoding = System.Text.Encoding.UTF8;

        //设置正文格式
        mail.IsBodyHtml = true;

        //发送邮件
        try
        {
            client.Send(mail);
            sendResult = "发送成功";
        }
        catch(ArgumentNullException ex1)
        {
            sendResult = "发送失败:" + ex1.Message;
        }
        catch (ArgumentOutOfRangeException ex2)
        {
            sendResult = "发送失败:" + ex2.Message;
        }
        catch (InvalidOperationException ex3)
        {
            sendResult = "发送失败:" + ex3.Message;
        }
        catch (SmtpException ex4)
        {
            sendResult = "发送失败:" + ex4.Message;
        }

        //返回
        return sendResult;
    }
    #endregion

关于邮件服务器,测试了三种邮箱,设置如下:

 server  port  needEnableSsl  fromUser  fromEmail  fromPwd 说明 
 smtp.gmail.com  587  true  abc  abc@gmail.com  123456  普通用户
 smtp.sina.com  25  false  abc  abc@sina.com  123456  邮箱设置->帐户->POP/SMTP设置,设置“开启”
 smtp.163.com  25  false  abc  abc@163.com  123456  VIP用户或者2006年11月16日之前申请的用户
小楼宝宝的涂鸦花花(Imitater)的博客起名称骨测字皖ICP备06000023号-17