[转]asp.net发送邮件代码!

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

asp.net 发送邮件代码
  说到发送邮件发送,先提一下SMTP。 SMTP的全称是“Simple Mail Transfer Protocol”,即简单邮件传输协议。它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。SMTP 协议属于 TCP/IP 协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。SMTP 服务器就是遵循 SMTP 协议的发送邮件服务器。
  再简单介绍一下名称空间(NameSpace)System.Web.Mail类库里所提供的邮件发送的对象、属性和方法
         (1)它有三个类:SmtpMail、MailMessage和MailAttachment。这三个对象本文的示例程序代码中都应用到了!
         1. MailMessage ,提供属性和方法来创建一个邮件消息对象。
         (Provides properties and methods for constructing an e-mail message.)
         2. MailAttachments – 提供属性和方法来创建一个邮件附件对象。
         (Provides properties and methods for constructing an e-mail attachment.)
         3. SmtpMail – 提供属性和方法通过使用windows 2000 CDOSYS 的消息组件的联合数据对象来发送邮件消息)。
         (Provides properties and methods for sending messages using the Collaboration Data Objects for Windows 2000 (CDOSYS) message component)
        (2)各个类的属性。
        1.先简单介绍SmtpMail的属性: SmtpServer -- SMTP的地址。
        2.主要来介绍MailMessage对象的属性
         From -- 发送邮件的地址
         To -- 接受邮件的地址
         Subject -- 邮件的标题
         Priority -- 邮件的优先级(有效值为High,Low,Normal)
         Attachments -- 返回一个集合,代表附件
         Bcc -- 密送地址
         Cc -- 抄送地址
         Body -- 获取或是设置电子邮件消息的内容
         BodyFormat -- 获取或是设置MailFormat的枚举值,此值指定消息体邮件的格式(Html格式、Text格式)
         Bodyencoding -- 指定消息的编码方式编码(主要有Base64,UUencode)
         其他几个不重要的省略。 随便提到密送和抄送的区别:密送就是你群发邮件时收邮件的人无法看到你发给了多少人以及他们的邮件地址,抄送就是群发邮件时收邮件的人则可以看到你发给了多少人以及他们的邮件地址。            
         (3)SmtpMail类的Send方法,它的目的就是发送邮件,有两个重载方法。
         1. SmtpMail.Send("发送邮件的地址","接受邮件的地址","邮件的标题","邮件消息的内容") 这个方法很简单,不适合发送带附件的邮件。
         2. SmtpMail.Send(MailMessage) 此方法复杂、灵活,适合发送附件,而且可以设置MailMessage对象的各种属性值。 如果我们用ASP.NET写一个邮件发送的程序,那么首先应该如何得到SMTP。有两种方法:第一种方法调用目前知名的邮件服务提供商的SMTP,比如新 浪、搜狐、网易的免费电子邮箱的SMTP;第二种方法是自己装一个SMTP虚拟服务器,这个在安装IIS时一起装上去的(安装过程就省略了:-) )。

 

 一、在ASP.NET利用知名的邮件服务提供商的SMTP来发送邮件
         首先需要去他们的邮件站点上注册免费邮箱,因为你要使用邮件服务提供商的SMTP,他们需要对身份进行验证,这样可以避免产生大量的垃圾邮件。假设我们在 新浪的邮件站点(mail.sina.com.cn)上注册了一个免费电子邮件,用户名是fei_880221,密码是520520.我们在新浪的邮件站 点获知它的SMTP地址是:smtp.sina.com.cn。我们需要向56381234@@qq.com发送邮件。那么利用ASP.NET(C#)发送邮件的核心代码如下:

        using System.Web.Mail;
        MailMessage objMailMessage;
        MailAttachment objMailAttachment;
        // 创建一个附件对象
        objMailAttachment = new MailAttachment( "d://test.txt" );//发送邮件的附件
        // 创建邮件消息
        objMailMessage = new MailMessage();
        objMailMessage.From = "mailto:fei_880221.com%22;//源邮件地址
        objMailMessage.To = "mailto:563812344@qq.com";//目的邮件地址
        objMailMessage.Subject = "邮件发送标题:你好!";//发送邮件的标题
        objMailMessage.Body = "邮件发送标内容:测试一下是否发送成功!";//发送邮件的内容
        objMailMessage.Attachments.Add( objMailAttachment );//将附件附加到邮件消息对象中
        //接着利用sina的SMTP来发送邮件,需要使用Microsoft .NET Framework SDK v1.1和它以上的版本
        //基本权限
        objMailMessage.Fields.Add("http://schemas.microsoft.com/cdo/configuration/smtpauthenticate", "1");
        //用户名
         objMailMessage.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendusername", "fei_880221") ;
         //密码
         objMailMessage.Fields.Add("http://schemas.microsoft.com/cdo/configuration/sendpassword", "520520");
         /如果没有上述三行代码,则出现如下错误提示:服务器拒绝了一个或多个收件人地址。服务器响应为: 554 : Client host rejected: Access denied
        //SMTP地址
        SmtpMail.SmtpServer = "smtp.sina.com.cn";
        //开始发送邮件
        SmtpMail.Send( objMailMessage );

         二、在ASP.NET利用本机的SMTP虚拟服务器的SMTP来发送邮件
         首先说一下SMTP配置。
        (1)右键点击“SMTP虚拟服务器”选择“属性”->在“常规”选项卡中设置“IP地址(P)”,我设置的是192.168.1.1。
        (2)选择“访问”选项卡,点击“中继”,选上“仅以下列表”(默认是被选上的),点击“添加”,在“单台计算机”中加入192.168.1.1。
         提示,如果没有完成(2),则会出现大家常见的一种错误提示:服务器拒绝了一个或多个收件人地址。服务器响应为: 550 5.7.1 Unable to relay for 563812344@qq.com
 
         using System.Web.Mail;
         MailMessage objMailMessage;
         MailAttachment objMailAttachment;
         // 创建一个附件对象
         objMailAttachment = new MailAttachment( "d://test.txt" );//发送邮件的附件
         // 创建邮件消息
         objMailMessage = new MailMessage();
         objMailMessage.From = "mailto:fei_880221@sina.com;//源邮件地址
         objMailMessage.To = "mailto:563812344@qq.com";//目的邮件地址
         objMailMessage.Subject = "邮件发送标题:你好!";//发送邮件的标题
         objMailMessage.Body = "邮件发送标内容:测试一下是否发送成功!";//发送邮件的内容
         objMailMessage.Attachments.Add( objMailAttachment );//将附件附加到邮件消息对象中
         //SMTP地址
         SmtpMail.SmtpServer = "192.168.1.1";
         //开始发送邮件
         SmtpMail.Send( objMailMessage ); 


下面是我自己在项目中作的一个真实的例子,相当于上面的第二个方法!上面也是看到一篇blog然后篡改过来的。。。呵呵!~

1.首先到导入命名空间
    /// <summary>
    /// Register后发送邮件
    /// </summary>
    /// <param name="email"></param>
    /// <param name="customer"></param>
    public void RegisterSend(string emailAddress,string userName,string userPass)
    {
        MailMessage objMailMessage;

        //创建邮件消息
        objMailMessage = new MailMessage();
        //发送地址
        objMailMessage.From = "xinuo_keji@163.com";
 //接收地址
        objMailMessage.To = emailAddress;
        //设置邮件正文内容的类型,这里因为是需要在内容中写条超连接,所以需要html格式
        objMailMessage.BodyFormat = MailFormat.Html;
        //邮件主题
        objMailMessage.Subject = "西诺科技感谢您的使用!";
        //邮件内容       
        objMailMessage.Body = "请点击以下连接进行注册确认!<br><a href='http://localhost:1055/CMS/RegistorReturn.aspx?un="+userName+"& up="+userPass+"'>点击此处</a>";
        //服务器端的ip,因为我们用的是本地的虚拟smtp服务器,所以只需要填写本地ip地址
        SmtpMail.SmtpServer = "192.168.0.114";
        //发送
        SmtpMail.Send(objMailMessage);
    }

第二号种方法我成功但他总是会发到油箱的垃圾邮件里!

 

 

------------------------------------------------------------------------------------------------------

全文完

URL: http://blog.csdn.net/lanlan520/archive/2007/07/27/1710859.aspx

asp.net mvc 发送邮件功能 asp.net mvc 发送邮件功能,配置里面主要配置发送邮件的的信息,注意:邮箱必须要开通smtp服务,否则是无法使用该功能的 阅读详情

相关推荐

ASP.NET中实现邮件发送的完整指南

SMTP(Simple Mail Transfer Protocol)是一种用于发送电子邮件的网络通信协议。它规定了邮件服务器之间以及邮件客户端和服务器之间的消息传输规则。SMTP协议工作在TCP/IP协议的第七层(应用层),默认使用25端口进行通信。理解SMTP协议的运作机制对于正确配置邮件系统至关重要。

weixin_42351520的博客 1170

ASP-邮件发送

ASP邮件发送代码,带SQL数据库,通过数据库读取数据进行发送

实现ASP.NET MVC邮件发送功能的完整指南

本文还有配套的精品资源,点击获取 简介:在C# ASP.NET MVC框架中实现邮件发送功能是Web应用常见的需求。本文将详细介绍如何利用ASP.NET MVC的特性构建邮件发送功能,并通过Microsoft Outlook SMTP服务器进行实现。将指导您如何创建邮件模型、邮件服务,以及在控制器中处理邮件发送动作和在视图中创建用户界面。 1. MVC设计模式基础 ...

weixin_32456485的博客 911

asp发送邮件(email)方法集合

asp发送邮件(email)方法集合有发送EMAIL的大全信息

asp.net发送邮件代码!

asp.net 发送邮件代码   说到发送邮件发送,先提一下SMTP。 SMTP的全称是“Simple Mail Transfer Protocol”,即简单邮件传输协议。它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中方式。SMTP 协议属于 TCP/IP 协议簇,它帮助每台计算机在发送或中信件时找到下一个目的地。SMTP 服务器就是遵循 SMTP 协议的发送邮件服务器。 

澜澜 3291

ASP发送邮件代码

============================================================= 邮件发送程序SendJMail(subject,mailaddress,email,sender,content,Filename,fromer) =============================================================

yunbao的专栏 2509

asp.net 发送邮件代码

         说到发送邮件发送,先提一下SMTP(呵呵,高手就跳过这一段吧!)。 SMTP的全称是“Simple Mail Transfer Protocol”,即简单邮件传输协议。它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中方式。SMTP 协议属于 TCP/IP 协议簇,它帮助每台计算机在发送或中信件时找到下一个目的地。SMTP 服务器就是遵循 SMTP 协议的发送

hymxtang的专栏 3357

[ASP.NET]asp.net发送邮件(超详细)

asp.net发送邮件 文章目录asp.net发送邮件1.设置qq邮箱smtp服务2.发送邮件代码3设置web.config 1.设置qq邮箱smtp服务 2.发送邮件代码 using System; using System.Configuration; using System.Net; using System.Net.Mail; public class EmailSender { //从Web.config中的<appSettings>配置节获取相应的键值 priv

qq_43587354的博客 1万+

ASP.NET发送电子邮件

http://www.cnblogs.com/ForEvErNoME/archive/2012/06/05/2529259.html 1.补充知识 (1)POP3和SMTP服务器是什么? 简单点来说:POP3 用于接收电子邮件 ,SMTP 用于发送电子邮件。 (1)POP3具体指什么? POP3(Post Office Protocol 3)即邮局协议的第3个版本,它是规定个人计

珍惜所有的一切 6976

asp.net发送电子邮件_如何在ASP.NET Core中发送电子邮件

asp.net发送电子邮件 您通常需要通过应用程序发送电子邮件。 您可以利用MailKit NuGet包在ASP.NET Core中发送电子邮件。 MailKit是一个开源邮件客户端库,可以在Windows,Linux或Mac系统上运行的.NET.NET Core应用程序中使用。 本文讨论了如何使用MailKit NuGet包在ASP.NET Core中发送电子邮件。 若要使用本文提供的代...

cxu0262的博客 1439

asp 发送邮件代码(附用到的组件jmail)

网上搜来搜去都是贴来贴去一弄来就可用的没有 此demo不出意外,机器正常,打开iis,一运行即可用。 有详细注释。另附组件jmail 解压双击后一直下一步至完成即成功。

一个简单的ASP发送邮件源码

一个简单的ASP发送邮件源码 需要的人可以拿去

网站ASP邮件发送源码

asp网站邮件发送代码,完整版^_^,希望能给大家带来帮助。。

asp.net三种发送邮件代码(stmp,无组件邮件发送)

asp教程.net三种发送邮件代码(stmp,无组件邮件发送) public bool sendmails() { smtpclient _smtpclient = new smtpclient(); _smtpclient.deliverymethod = smtpdeliverymethod.network;//指定电子邮件发送方式 _smtpclient.host = "i

qq_35306193的博客 3032

ASP.NET 发送邮件带附件

Default2.aspx页面上的代码 电子邮件发送测试程序

6732

ASP.net实现邮件发送

进入信息化时代,网络已经遍及到生活的方方面面,网络教育,网络培训,网络工程等等,各各行业,都应运而生,为网络市场增加活力。 网络信息化的来到,为我们的生活提供了方便,以前交流用书信,现在我们有电脑,电话,电子邮件, 说到电子邮件,青鸟的课程体系里面有Exchange企业邮件系统,这套系统能够为提供邮件服务,实现内部及外部的邮件发操作,同时可以利用自己的公司域名后缀,提升公司品牌,创造

niemeiquan的专栏 5417

asp.net实现发送电子邮件

例一: input.htm 精彩春风之ASP.NET发送 HTML格式邮件 邮件地址: sendemail.asp Sub Page_load(Sender as Object, E as EventArgs) Dim MyMessage as New MailMessage MyMessage.To = reques

Keymo_的奋斗史 5818

asp.net 使用html模板发送电子邮件

在做一个基于ASP.NET的项目时需要使用html模板发送电子邮件,研究了下,总结如下: HTML模板 HTML Template Dear $USER_NAME$, My name is $NAME$ Best Regards, $MY_NAME$ 其中用$符号包裹的字符串是要在程序里动态替换的。 发送邮件 ///

Johnson的专栏 6758
上一篇: [转]解决SQL Server 1069错误登录失败
下一篇: [转]用ASP.NET做自己的邮件发送系统
roofwei
博客等级 码龄19年 21粉丝 36原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值