您的位置:首页 > 编程语言 > ASP

asp.net mvc发送邮件附带附件代码~~~~

2016-09-30 14:34 519 查看
1:导入引用using System.Net.Mail;

2: private MailMessage message = new MailMessage();//申明邮件类

3:   //这里只是模拟邮件发送功能

         public ActionResult GetRegist(string txt,string pwd) {

            //EmailHtlper.Send(string.Format("用户{0}于{1}注册账号,密码为{2},请牢记你的密码", txt, DateTime.Now, pwd));

        string EmailAccunt = "x'x'x'x@163.com";//接受邮件的邮箱 

        string toMailAddress = "xxxxxxx@qq.com";//发送邮件的邮箱

       string EmailCode = "xxxxx";    //发送邮箱的授权码,这是qq邮箱的验证码

            

       

            message.To.Add(EmailAccunt);//要发送到的邮箱

            message.From = new MailAddress(toMailAddress); 

            message.Subject = "测试邮件";//邮件的标题

            message.SubjectEncoding = System.Text.Encoding.UTF8;

            message.Body = "这是测试邮件,只是验证";//邮件的正文

            message.BodyEncoding = System.Text.Encoding.UTF8;//编码格式

            message.IsBodyHtml = true; //是否为html格式 

            message.Priority = MailPriority.High; //发送邮件的优先等级 

            SmtpClient sc = new SmtpClient();//允许应用程序使用简单的邮件传输协议

            sc.EnableSsl = true;//是否SSL加密

            sc.Host = "smtp.qq.com"; //指定发送邮件的服务器地址或IP 

            sc.Port = 25; //指定发送邮件端口 ,默认端口

            sc.Credentials = new System.Net.NetworkCredential(toMailAddress, EmailCode); //指定登录服务器的用户名和密码(注意:这里的密码是开通上面的pop3/smtp服务提供给你的授权密码,不是你的qq密码)

            try

            {

                string path = "C:/Users/Administrator/Desktop/新建文本文档.txt";//附件的绝对路劲

                AddAttachments(path);//添加附件

                sc.Send(message); //发送邮件 

            }

            catch (Exception e)

            {

                Response.Write(e.Message);

             

            }

      return Content("ok");

        }

这是邮件发送代码,下面是附件的代码

      public void AddAttachments(string attachmentsPath)//这里的参数代表附件的绝对路径

        {

            try

            {

                string[] path = attachmentsPath.Split(';'); //以什么符号分隔可以自定义

                Attachment data;

                ContentDisposition disposition;

                for (int i = 0; i < path.Length; i++)

                {

                    data = new Attachment(path[i], MediaTypeNames.Application.Octet);

                    disposition = data.ContentDisposition;

                    disposition.CreationDate =System.IO.File.GetCreationTime(path[i]);

                    disposition.ModificationDate = System.IO.File.GetLastWriteTime(path[i]);

                    disposition.ReadDate = System.IO.File.GetLastAccessTime(path[i]);

                    message.Attachments.Add(data);//添加附件

                }

            }

            catch (Exception ex)

            {

                Console.WriteLine(ex.ToString());

            }

        }

好了,这样就可以实现发送邮件的额功能了;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  mvc发送邮件