ASP.NET 3.5 中实现发送email电子邮件
来源:红黑联盟
方法1:cs代码
using System.Net.Mail;
using System.Net;
string mailServerName = "smtp.qq.com"; //发送邮件的SMTP服务器
string mailFrom = "xxxxxx@qq.com"; //发件人邮箱(用126的邮件服务器,就必须用126邮箱的用户名)
string mailTo = "xxxxxx@qq.com"; //收件人邮箱
string subject = "用代码方式发送邮件";//邮件主题
string body = "这里是邮件正文了"; //邮件正文 using (MailMessage message = new MailMessage(mailFrom, mailTo, subject, body))
{
//SmtpClient是发送邮件的主体,这个构造函数是告知SmtpClient发送邮件时使用哪个SMTP服务器
SmtpClient mailClient = new SmtpClient(mailServerName);
//将认证实例赋予mailClient,也就是访问SMTP服务器的用户名和密码
mailClient.Credentials = new NetworkCredential("xxx", "xxxxxx");
//最终的发送方法
mailClient.Send(message);
}
Response.Write("发送成功");
方法2:cs代码+web.config
在web.confg中添加如下代码:(本人试过了,把下面这段代码放在<configuration> </configuration>节内部即可。)
<system.net>
<!--如果是第三方smtp服务器,需要指定userName 和 password,并根据host指定发件人邮件地址from
测试发现from值必须是userName值加上指定的smpt服务器才行,而且是必须指定的
如果是本机smtp服务器,只需指定defaultCredentials="true"即可-->
<mailSettings>
<smtp deliveryMethod="Network" from ="xxxxxx@qq.com" >
<network host="smtp.qq.com" port="25" userName="xxx" password="xxxxxx" />
</smtp>
</mailSettings>
</system.net>
下面我自己的实验截图

CS代码部分:
using System.Net.Mail;
using (MailMessage message = new MailMessage())
{
message.To.Add(new MailAddress("xxxxxxx@qq.com")); //收件人邮箱
message.Subject = "通过配置文件设置发送邮件";//邮件主题
message.Body = "这里是邮件正文了"; //邮件正文 SmtpClient mailClient = new SmtpClient();
mailClient.Send(message);
Response.Write("发送成功");
}
方法3:cs代码(函数)
using System.Net.Mail;
using System.Text;
public bool SendEmail(string mailTo, string mailSubject, string mailContent)
{
// 设置发送方的邮件信息,例如使用网易的smtp
string smtpServer = "smtp.qq.com"; //SMTP服务器
string mailFrom = "XXXXX@qq.com"; //登陆用户名
string userPassword = "XXX";//登陆密码
// 邮件服务设置 SmtpClient
SmtpClient smtpClient = new SmtpClient();
smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
//指定电子邮件发送方式
smtpClient.Host = smtpServer;
//指定SMTP服务器
smtpClient.Credentials = new System.Net.NetworkCredential(mailFrom, userPassword);//用户名和密码
// 发送邮件设置
MailMessage mailMessage = new MailMessage(mailFrom, mailTo); // 发送人和收件人
mailMessage.Subject = mailSubject;//主题
mailMessage.Body = mailContent;//内容
mailMessage.BodyEncoding = Encoding.UTF8;//正文编码
mailMessage.IsBodyHtml = true;//设置为HTML格式
mailMessage.Priority = MailPriority.Low;//优先级
try
{
smtpClient.Send(mailMessage);// 发送邮件
return true;
}
catch (SmtpException ex)
{
return false;
}
} bool result = this.SendEmail("xxxxxxxx@qq.com", "邮件EMAIL主题", "邮件Email内容");
if (result)
{
Response.Write("发送成功");
}
else
{
Response.Write("发送失败");
}
实验的感觉:
通过SMTP发送邮件,方法简单。但是现如今好多网站的SMTP服务器限制的比较严,可能会导致发送失败。
ASP.NET 3.5 中实现发送email电子邮件的更多相关文章
- asp.net发送E-mail
发送电子邮件也是项目开发当中经常用到的功能,这里我整理了一个发送电子邮件(带附件,支持多用户发送,主送.抄送)的类库,供大家参考. 先上两个实体类,用于封装成Mail对象. /// <summa ...
- ASP.NET结合COM组件发送Email
在开发电子邮件发送程序的时候,我们经常需要使用到相应的组件,其实不需要第三方的组件(例如:Jmail)照常可以做到发送Email的功能. 在系统目录(如c:/winnt或c:/windows)的sys ...
- 发送email给列表中的邮箱--python
#!/usr/bin/python # -*- coding: utf-8 -*- # from email.Header import Header from email.MIMEText impo ...
- 如何在ASP.NET Web站点中统一页面布局[Creating a Consistent Layout in ASP.NET Web Pages(Razor) Sites]
如何在ASP.NET Web站点中统一页面布局[Creating a Consistent Layout in ASP.NET Web Pages(Razor) Sites] 一.布局页面介绍[Abo ...
- .NET跨平台之旅:ASP.NET Core从传统ASP.NET的Cookie中读取用户登录信息
在解决了asp.net core中访问memcached缓存的问题后,我们开始大踏步地向.net core进军——将更多站点向asp.net core迁移,在迁移涉及获取用户登录信息的站点时,我们遇到 ...
- ASP.NET MVC: Razor中的@:和语法
本文将讨论新版Razor里视图引擎中支持的两个有用的语法功能:@:和<text>语法. 用Razor实现流畅编程 ASP.NET MVC 3配有一个新的名为“Razor”的视图引擎选项(除 ...
- Spring 发送 Email
本文转自:http://zl198751.iteye.com/blog/757617 看到了本文,收获颇丰,感谢之至! 首先介绍下Email的发送流程: 需要选中smtp邮件服务器,Yahoo不提供免 ...
- 使用PHP发送email进行账号激活或者密码修改操作
使用PHPMailer编写发送邮件 PHPMailer需PHP的socket扩展支持,而PHPMailer链接qq域名邮箱时需要ssl加密方式(qq邮箱最近做了限制,新开域名邮箱不再允许通过smtp协 ...
- 【ASP.NET Web API教程】6.2 ASP.NET Web API中的JSON和XML序列化
谨以此文感谢关注此系列文章的园友!前段时间本以为此系列文章已没多少人关注,而不打算继续下去了.因为文章贴出来之后,看的人似乎不多,也很少有人对这些文章发表评论,而且几乎无人给予“推荐”.但前几天有人询 ...
随机推荐
- 官方文档学习之《start developing iOS apps(swift)》
1. let 关键字是用来定义常量的,任何类型的常量都可以进行定义:例如:定义字符串 let constantValue1 = "this is a string",也可以定义数 ...
- php大力力 [033节] 随便看看:PHP程序员学习C++
php大力力 [033节] 随便看看:PHP程序员学习C++ 2014 兄弟连高洛峰 PHP教程14.1.7 在PHP脚本中操作MySQL数据库4 观看 - 56.com http://www.med ...
- Python的交互式界面 编写 .
from tkinter import * # 导入tkinter模块的所有内容 root = Tk() # 创建一个文本Label对象 textLabel = Label(root, # 将内容绑定 ...
- N的阶乘的长度
阶乘是乘法 , 乘法的话 , 几位数*几位数的位数 就是 哪两个几位数相加 . 这个可以用log10来解决 , 所以有如下代码 . #include<stdio.h> #include& ...
- BZOJ 3398 牡牛和牝牛
dp. #include<iostream> #include<cstdio> #include<cstring> #include<algorithm> ...
- Java 集合深入理解(5):AbstractCollection
点击查看 Java 集合框架深入理解 系列, - ( ゜- ゜)つロ 乾杯~ 今天好累,来学学 AbstractCollection 吧! 什么是 AbstractCollection Abstrac ...
- [转]MMORPG服务器架构
MMORPG服务器架构 一.摘要 1.网络游戏MMORPG整体服务器框架,包括早期,中期,当前的一些主流架构2.网络游戏网络层,包括网络协议,IO模型,网络框架,消息编码等.3.网络游戏的场景管理,A ...
- U3D各路径实例
- Gitlab. Disable user creation on welcome page
Login to your Gitlab > Admin area > settings > Features > remove the check mark "Si ...
- 《深入浅出Node.js》第1章 Node简介
@by Ruth92(转载请注明出处) 第1章 Node简介 一.Node的起源 高性能Web服务器的要点:事件驱动.非阻塞I/O. 选择JavaScript的原因:高性能.符合事件驱动.没有历史包袱 ...