• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
chaxiaoyou
博客园    首页    新随笔    联系   管理    订阅  订阅

.Net中简单实现发送邮件

1、在web.config中的<configuration>内加入如下配置信息(host—smtp服务地址;port—端口号;userName—用户名;password—密码。请自行修改)。

<system.net>
    <mailSettings>

      <smtp>
        <network host="smtpserver" port="25" userName="uid" password="pwd" />
      </smtp>

    </mailSettings>
  </system.net>

2、aspx页面HTML代码


<table border="0">
        <tr>
            <td>
                发件人
            </td>
            <td>
                <asp:TextBox runat="server" ID="emailfrom"></asp:TextBox>
            </td>
        </tr>
        <tr>
            <td>
                收件人
            </td>
            <td>
                <asp:TextBox runat="server" ID="emailto"></asp:TextBox>
            </td>
        </tr>
        <tr>
            <td>
                主题
            </td>
            <td>
                <asp:TextBox runat="server" ID="subject"></asp:TextBox>
            </td>
        </tr>
        <tr>
            <td>
                附件
            </td>
            <td>
                <asp:FileUpload ID="attachment" runat="server" />
            </td>
        </tr>
        <tr>
            <td>
                内容
            </td>
            <td>
                <asp:TextBox runat="server" ID="body" TextMode="MultiLine" Columns="50" Rows="10"></asp:TextBox>
            </td>
        </tr>
        <tr>
            <td colspan="2" align="center">
                <asp:Button runat="server" ID="btnSend" Text="发送" OnClick="btnSend_Click" />
            </td>
        </tr>
    </table>

3、实例化一个MailMessage并设置其属性

MailMessage mm = new MailMessage(emailfrom.Text, emailto.Text);

        mm.Subject = subject.Text;
        mm.Body = body.Text;
        // HTML格式
        mm.IsBodyHtml = true;

        // 添加附件
        mm.Attachments.Add(new Attachment(attachment.PostedFile.InputStream, attachment.FileName));

        /**//*其他如抄送、优先级之类的都可以在MailMessage类的属性中设置*/

4、实例化一个SmtpClient,调用其Send方法,参数为MailMessage对象

SmtpClient sc = new SmtpClient();

        // 编程方式设置smtp(不用web.config)
        // sc.Host = "";
        // sc.Port = 25;
        // sc.Credentials = new NetworkCredential("username", "password");

        try 
        {
            sc.Send(mm);
            Response.Write("ok");
        }

        catch (Exception ex) 
        {
            // 与smtp相关的错误
            if (ex is SmtpException) 
            {
                // ex.ToString();
                Response.Write("smtp发信失败");
            }

            else 
            {
                Response.Write(ex.ToString());
            }

        }
posted @ 2010-06-13 09:07  chaxiaoyou  阅读(414)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3