在VS.NET 2005中调用带身份验证smtp服务器发送邮件

 
其实在2005中发送邮件很容易,只不过在调用邮件服务器时可能要用到身份验证,而在2003下是用 System.Web.Mail; 空间下的System.Web.Mail.MailMessage实例,
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate","1");
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername"," 用户名" ); 
mail.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword"," 密码" );
其中mail为System.Web.Mail.MailMessage的实例。而在2005下已经建议用System.Net.Mail;而System.Net.Mail.MailMessage实例没有Fields属性,所以要用新的验证方法。
2005 中的邮件服务器身份验证其实更容易,只要在WebConfig中进行简单配置即可,如:
<configuration>
<system.net>
    <mailSettings>
      <smtp from=" 用户名@163.com">
        <network host="smtp.163.com" userName=" 用户名" password="密码" port="25" defaultCredentials="false"/>
      </smtp>
    </mailSettings>
 </system.net>
</configuration>
后台代码举例:
using System.Net.Mail;
protected void btn_send_Click(object sender, EventArgs e)
{
        try
        {
 
            MailAddress from = new MailAddress(" 发件人地址");//如test@163.com,初步测试,用test@sina.com不行,不知是不是用163的邮件服务器,就必须用163邮箱的用户名
            MailAddress to = new MailAddress(" 收件人地址");//如test@tom.com
 
           MailMessage mail = new MailMessage(from, to);           
           mail.Subject = " 主题";
           mail.Body = " 正文";
           
            // 以下设置服务器
            SmtpClient mySmth = new SmtpClient();
            // 以下为增加附件
            Attachment data = new Attachment(" 附件路径" );
            mail.Attachments.Add(data);
            mySmth.Send(mail);
            mail.Dispose();       
       }
        catch
        {
            Response.Write("<script>alert(' 邮件发送出错!')</script>");
        }
}
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值