现在的位置: 首页 > 综合 > 正文

asp.net使用smtp协议实现简单的发送邮件(支持附件)

2017年11月05日 ⁄ 综合 ⁄ 共 1458字 ⁄ 字号 评论关闭

引入下面两个名称空间

using System.Net.Mail;

using System.Net;

前台页面代码

<htmlxmlns="http://www.w3.org/1999/xhtml">
<headrunat="server">
    <title></title>
</head>
<body>
    <formid="form1"runat="server">
    <div>
     
        发送人:<asp:TextBoxID="txtFrom"runat="server"></asp:TextBox>
        <br/>
        收件人:<asp:TextBoxID="txtTo"runat="server"></asp:TextBox>
        <br/>
        主题:<asp:TextBoxID="txtTheme"runat="server"></asp:TextBox>
        <br/>
        附件:<asp:FileUploadID="fpAttachment"
            runat="server"/>
        <br/>
        内容:<asp:TextBoxID="txtContent"runat="server"Rows="20"TextMode="MultiLine"
            Width="300px"></asp:TextBox>
        <br/>
        <asp:ButtonID="Button1"runat="server"Text="发送"onclick="Button1_Click"/>
    </div>
    </form>
</body>

</html>

================================================================================
后台C#代码:
 protected void Button1_Click(objectsender, EventArgs e)
    {
        //测试通过,能发送带有附件的邮件
        stringfrom = txtFrom.Text.Trim(); //发件人
        stringto = txtTo.Text.Trim();//收件人
        stringtheme = txtTheme.Text.Trim();//主题
        //string file = fpAttachment.FileName;//附件文件名
        stringfile =fpAttachment.PostedFile.FileName;//附件文件路径(包含文件名)
        stringcontent = txtContent.Text; //邮件内容
        MailMessage messge = newMailMessage(from,to);  //邮件消息实例
        messge.Body = content; 
        messge.Subject = theme;
        messge.IsBodyHtml = true;
        messge.Priority = MailPriority.High;//邮件优先级别
        messge.Attachments.Add(newAttachment(file));
        SmtpClient client = newSmtpClient(); //Smtp协议
        client.Host = "smtp.163.com"; //发送人的Smtp主机名称或IP地址,实例为163邮箱的Smtp地址
        client.Credentials = newNetworkCredential("cpeng0907@163.com", "发送邮箱的密码");//验证发件人的身份凭据
        client.Send(messge);
        messge.Attachments.Dispose();
    }

抱歉!评论已关闭.