Asp.net实现电子邮件及附件的发送

本文展示了如何使用ASP.NET发送带有附件的电子邮件。通过创建`MailMessage`对象,设置发件人、收件人、主题和正文,并使用`SmtpClient`类进行发送。代码中还涉及了附件的上传保存以及使用`NetworkCredential`进行身份验证。最后,发送成功后会弹出提示框。
摘要由CSDN通过智能技术生成

直接上代码:

1.引入命名空间

       using System.Net.Mail;
       using System.Net;
       using System.IO;

2.发送按钮事件

        

MailMessage msg = new MailMessage();
        string mailFrom = TextBox1.Text.Trim();
        string mailTo =TextBox3.Text.Trim();
        msg.From = new MailAddress(mailFrom,mailFrom);         //发件人的Email地址
        msg.To.Add(new MailAddress(mailTo,mailTo));                 //发送的目标地址
        msg.Subject = TextBox4.Text.Trim();                                      //邮件标题
        msg.Body = TextBox5.Text.Trim();                                          //邮件内容
        msg.IsBodyHtml = true;                                                            //邮件正文格式
        msg.Priority = MailPriority.Normal;      //优先级别有3个级别 Normal 一般 High 最高 Low 最低
        SmtpClient c = new SmtpClient();                                         //邮件发送类对象  
        c.Host = "smtp.126.com";                       //smtp协议地址,注意本人是126邮箱,不同请改之
        string userName = mailFrom.Substring(0, mailFrom.IndexOf("@"));      //取发件人Email用户名
        c.Credentials = new NetworkCredential(userName, TextBox2.Text.Trim());//自己的用户名及密码TextBox2.Text.Trim()表示密码

        // 创建一个附件对象
        string ServerFileName = "";
        if (this.upfile.PostedFile.ContentLength != 0)                                          //判断附件大小
        {
            string upFileName = this.upfile.PostedFile.FileName;                     //获取路径
            string name = upFileName.Substring(upFileName.LastIndexOf("\\") + 1);  //取附件名
            ServerFileName = Server.MapPath("upload/" + name);                   //获取服务器路径,根目录需要有upload文件夹
            ServerFileName = Server.HtmlEncode(ServerFileName);             //对路径进行编码
            //上传附件到服务器
            this.upfile.PostedFile.SaveAs(ServerFileName);
            //为邮件添加附件
            msg.Attachments.Add(new Attachment(ServerFileName));
           
        }
        //发送邮件
        c.Send(msg);
        msg.Dispose();   //释放资源
        c.Dispose();     //释放资源
        Page.ClientScript.RegisterStartupScript(GetType(), "mail",
            "<script>alert('邮件发送成功!')</script>");

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值