ASP.NET MVC 模块与组件(一)——发送邮件
2016-05-18 20:30
429 查看
我的见解:
模块化与组件化是编程的一种思想:提高代码的重用性,提高开发效率。
常见的模块化就是函数与各种类型的封装,若是代码具有更高的重用价值(能够提供给别人使用),建议可以考虑封装成动态链接库(dll),直接引用使用。
常见的组件化就是将各种需求功能封装成一系列完整的文档(比模块化要求更高、更完整),要用的时候直接引用对应的文件就可以使用。
说了那么多,我们就直奔今天的主题:在用ASP.NET 技术开发Web网站的时候,如何实现发送邮件的功能?
下面的是一个专门用来发送邮件的类(封装好了,可以直接编译成动态链接库,方便以后重复使用)(默认是以Html格式发送的邮件)
using System; using System.Collections.Generic; using System.Linq; using System.Text.RegularExpressions; using System.Web; using System.Web.Mvc; using System.Web.Security; using Test.Models; using DllLibrary.SendEmail;//引入对应命名空间 namespace Test.Controllers { public class HomeController : Controller { /// <summary> /// 发送邮件 /// </summary> /// <param name="title">邮件主题</param> /// <param name="email">要发送对象的邮箱</param> /// <param name="content">邮件内容</param> /// <returns></returns> public ActionResult SendMail(string title, string email, string content) { string senderServerIp = "smtp.163.com"; //使用163代理邮箱服务器(也可是使用qq的代理邮箱服务器,但需要与具体邮箱对相应) string toMailAddress = email; //要发送对象的邮箱 string fromMailAddress = "XXXXXX@163.com";//你的邮箱 string subjectInfo = title; //主题 string bodyInfo = "<p>" + content + "</p>";//以Html格式发送的邮件 string mailUsername = "XXX"; //登录邮箱的用户名 string mailPassword = "xomeagyungxzhsxf"; //对应的登录邮箱的第三方密码(你的邮箱不论是163还是qq邮箱,都需要自行开通stmp服务) string mailPort = "25"; //发送邮箱的端口号 //string attachPath = "E:\\123123.txt; E:\\haha.pdf"; //创建发送邮箱的对象 Email myEmail = new Email(senderServerIp, toMailAddress, fromMailAddress, subjectInfo, bodyInfo, mailUsername, mailPassword, mailPort, false, false); //添加附件 //email.AddAttachments(attachPath); if (myEmail.Send()) { return Content("<script>alert('邮件已成功发送!')</script>"); } else { return Content("<script>alert('邮件发送失败!')</script>"); } } } }
View Code
简单说明:要发送邮件,需要开通一个stmp服务的邮箱号。(可以到163官网申请一个163邮箱,并且开通stmp服务就可以了(注:示例代码中所使用的密码是在开通stmp服务时,单独发送的第三方登录密码,而不是登录邮箱的密码))
好了,这次分享就到这里了,下次继续。。。
<我的博客主页>:http://www.cnblogs.com/forcheng/
相关文章推荐
- Asp.net中使用文本框的值动态生成控件的方法
- ASP.NET防范SQL注入式攻击的方法
- ASP.Net Core MVC6 RC2 启动过程分析[偏源码分析]
- ASP.NET 获取不同frame中的控件
- ASP.NET WebAPI 路由规则与POST数据 【转】
- ASP.NET Web API路由规则(二) 【转】
- ASP.NET MVC之路由特性以及母版页呈现方式(十二)
- 针对Asp.net MVC SEO的几点建议
- 如何:在 ASP.NET(c#) 网页中检测浏览器类型
- ASP.NET WebApi 路由配置
- .NET跨平台之旅:成功将示例站点升级至ASP.NET Core RC2
- 七天学会ASP.NET MVC(七)——创建单页应用 【转】
- 七天学会ASP.NET MVC (六)——线程问题、异常处理、自定义URL 【转】
- 七天学会ASP.NET MVC (五)——Layout页面使用和用户角色管理 【转】
- 七天学会ASP.NET MVC (四)——用户授权认证问题 【转】
- 七天学会ASP.NET MVC (三)——ASP.Net MVC 数据处理 【转】
- 七天学会ASP.NET MVC (二)——ASP.NET MVC 数据传递 【转】
- 七天学会ASP.NET MVC (一)——深入理解ASP.NET MVC 【转】
- Asp.net MVC中 Controller 与 View之间的数据传递
- C#实现二维码功能,winform 以及 asp.net均可以用