网站邮件发送模块实现指南

在大学三年级的项目中,需要在网站项目中实现邮件发送功能。为了找到解决方案,浏览了许多网站和博客。通过本文提供的类文件,可以使用Gmail账户凭证来发送电子邮件。

确保使用正确的参数实例化这个类的实例。

使用代码

要使用这个类,请将其添加到网站的App_Code文件夹中。然后,创建一个网页来获取发送邮件所需的用户输入,例如:收件人、主题和消息。然后,根据需求编辑用户名和密码文件。在这里,为了允许用户发送邮件,请确保通过网站获取用户名和密码。然后,添加两个更多的变量来传递用户名和密码到应用程序。

以下是使用C#语言编写的sendMail()方法的示例代码:

public static void sendMail( string to, string from, string subject, string body, string username, string password) { // Smtp配置 SmtpClient client = new SmtpClient( "smtp.gmail.com", 465 ); // 编辑密码和用户名 client.Credentials = new NetworkCredential( string.Format("{0}@gmail.com", username), password); client.EnableSsl = true; Mail.Fields[ "http://schemas.microsoft.com/cdo/configuration/sendusername" ] = string.Format("{0}@gmail.com", username); Mail.Fields[ "http://schemas.microsoft.com/cdo/configuration/sendpassword" ] = password; }

如果不允许每个用户发送电子邮件,而只允许特定用户发送,那么可以为所有邮件发送者使用一个通用的电子邮件,例如admin@obrs.com。然后,不需要更改任何其他方法定义,但请确保更改用户名和密码。

这个类的主要特点是它有一个备用计划,以防万一,可以调用。邮件发送方法是sendMail(),但如果失败,它将调用一个替代的邮件发送方法SendMailAlt(),使用适当的属性。但是,第二种方法不允许发送附件。所以不要允许用户在任何方法中添加附件。

备用邮件发送方法SendMailAlt()

如果主要的sendMail()方法失败,可以使用SendMailAlt()作为备用方案。以下是SendMailAlt()方法的示例代码:

public static void SendMailAlt( string to, string from, string subject, string body, string username, string password) { // Smtp配置 SmtpClient client = new SmtpClient( "smtp.gmail.com", 465 ); // 编辑密码和用户名 client.Credentials = new NetworkCredential( "USERNAME@gmail.com", "PASSWORD" ); client.EnableSsl = true; MailMessage mail = new MailMessage(); mail.From = new MailAddress(from); mail.To.Add(to); mail.Subject = subject; mail.Body = body; try { client.Send(mail); } catch (Exception ex) { // 处理异常 Console.WriteLine("邮件发送失败: " + ex.Message); } }
沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485