试图部分代码:
@{ ViewBag.Title = "Index"; Layout = "~/Views/Shared/_Layout.cshtml"; } <h2> BUG提交系统 </h2> <form method="post" action="/Home/send" enctype="multipart/form-data"> <div> 您的 尊姓大名 <input type="text" name="customerName" /> </div> <div> 您遇到的问题 <br /> <textarea name="customerRequest" cols="45" rows="4"></textarea> </div> <div> 请给出证据: <br /> <input size="60" type="file" name="fileAttachment1" /> <input size="60" type="file" name="fileAttachment2" /> </div> <div> <input type="submit" value="告诉我" /> </div> </form>
控制器部分:
using System; using System.Collections.Generic; using System.Linq; using System.Net; using System.Net.Mail; using System.Text; using System.Web; using System.Web.Helpers; using System.Web.Mvc; namespace MvcJs.Controllers { public class HomeController : Controller { // // GET: /Home/ public ActionResult Index() { return View(); } public ActionResult Send() { SmtpClient smtp = new SmtpClient(); //实例化一个SmtpClient smtp.DeliveryMethod = SmtpDeliveryMethod.Network; //将smtp的出站方式设为 Network smtp.EnableSsl = true;//smtp服务器是否启用SSL加密 smtp.Host = "smtp.qq.com"; //指定 smtp 服务器地址 smtp.Port = 25; //指定 smtp 服务器的端口,默认是25,如果采用默认端口,可省去 //如果你的SMTP服务器不需要身份认证,则使用下面的方式,不过,目前基本没有不需要认证的了 smtp.UseDefaultCredentials = false; smtp.Credentials = new NetworkCredential("1085205762@qq.com", "c*******p");//此处非邮箱密码,是授权码 //如果需要认证,则用下面的方式 MailMessage mailMsg = new MailMessage("1085205762@qq.com", "347456018@qq.com");//两个类,别混了应该引入System.Net.Mail下的 //mailMsg.From = new MailAddress("1085205762@qq.com", "客服中心");//源邮件地址 //mailMsg.To.Add(new MailAddress("347456018@qq.com", "七戒"));//目的邮件地址。可以有多个收件人 mailMsg.Subject = "网易养猪超过一万头,幸运大抽奖";//发送邮件的标题 mailMsg.Body = "恭喜您获得<font color='red'>肥猪</font>一只";//发送邮件的内容 mailMsg.IsBodyHtml = true; mailMsg.BodyEncoding = Encoding.UTF8; mailMsg.Priority = MailPriority.Low; smtp.Send(mailMsg); //发送邮件,如果不返回异常, 则大功告成了。 return View("index"); } } }
设置QQ邮箱的SMTP