您的位置:首页 > 其它

使用.net实现邮件发送

2016-05-22 16:11 344 查看
在现在的web项目中,邮件发送成为了判断用户身份,限制用户重复注册的好方法。再网上寻找了许多源码,也试了挺多,分享一个使用MailMassage类的,导入时需要引用using System.Net.Mail。

public bool sendMail(string toMail,string body)
        {
            MailMessage mailObj = new MailMessage();
            try
            {
                mailObj.From = new MailAddress("*******@126.com"); //发送人邮箱地址
                mailObj.To.Add(“*******@163.com”);   //收件人邮箱地址
                mailObj.Subject = "欢迎注册抗NMDA受体脑炎公益网站";    //主题
                mailObj.Body = “body”;    //正文
                mailObj.IsBodyHtml = true;
                SmtpClient smtp = new SmtpClient();
                smtp.Host = "smtp.126.com"; //smtp服务器名称
                smtp.Port = 25;
                smtp.UseDefaultCredentials = true;
                smtp.Credentials = new NetworkCredential("*********@126.com", "***********");  //发送人的登录名和密码
                smtp.Send(mailObj);
                return true;
            }
            catch (Exception e)
            {
                return false;
            }
        }

有几个问题可能在发送的时候出现:

1、收件人如果不存在,则会报错,所以用try,catch包围起来。

2、请确保发送邮箱已经开启IMAP/SMTP服务 ,否则会报“smtp服务器要求安全连接或客户端未通过身份验证..”异常信息。

3、现在很多邮箱都使用了授权码机制,为了保证邮箱安全登陆第三方平台,所以在发送人的登陆密码一栏大多数应填写授权码,不过不同邮箱有不同情况。

4、一些邮件会被客户邮箱归为垃圾邮件,所以发的时候篇幅尽量长,实在不行可以发送html代码。(mailObj.IsBodyHtml = true;)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  登陆注册 .net 邮件 web