C#编写发送邮件组件
作者:hebedich 时间:2022-08-26 19:28:57
在MailSetting里的配置好邮件服务器,然后MailEntity里配置好要发送的邮件主体,最后使用MailServer里的方法Send发送邮件
MailEntity.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace AutoOutTicket.Mail
{
public class MailEntity
{
public string from;
public string to;
public string fromName;
public string toName;
public string cc;
public bool isHtml;
public string subject;
public string body;
public string attach;
}
}
MailServer.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Mail;
using System.Web;
namespace AutoOutTicket.Mail
{
public class MailServer
{
MailEntity _entity = null;
MailSetting _settings = null;
public MailServer(MailEntity entity, MailSetting settings)
{
this._entity = entity;
this._settings = settings;
}
public bool Send()
{
try
{
MailMessage message = new MailMessage(_settings.smtpUser, _entity.to);
message.IsBodyHtml = _entity.isHtml;
message.Subject = _entity.subject;
message.Body = _entity.body;
if (!string.IsNullOrWhiteSpace(_entity.cc))
{
message.CC.Add(_entity.cc);
}
if (!string.IsNullOrWhiteSpace(_entity.attach))
{
Attachment atta=new Attachment(_entity.attach);
message.Attachments.Add(atta);
}
SmtpClient client = new SmtpClient(_settings.smtpHost, _settings.smtpPort);
client.Credentials = new NetworkCredential(_settings.smtpUser, _settings.smtpPass);
client.SendAsync(message, null);
return true;
}
catch (Exception)
{
}
return false;
}
}
}
MailSetting.cs
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace AutoOutTicket.Mail
{
public class MailSetting
{
public string smtpHost = "";
public int smtpPort;
public string smtpUser = "";
public string smtpPass = "";
public MailSetting()
{
}
public MailSetting(string smtpServer, int smtpPort, string smtpUser, string smtpPass)
{
this.smtpHost = smtpServer;
this.smtpPort = smtpPort;
this.smtpUser = smtpUser;
this.smtpPass = smtpPass;
}
}
}
以上所述就是本文的全部内容了,希望大家能够喜欢。
标签:C#,发送邮件
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
详解基于java的Socket聊天程序——初始设计(附demo)
2023-02-01 06:46:21
![](https://img.aspxhome.com/file/2023/0/75000_0s.png)
springcloud-gateway整合jwt+jcasbin实现权限控制的详细过程
2023-11-20 12:57:09
![](https://img.aspxhome.com/file/2023/8/59078_0s.png)
Java对象不使用时赋值null的意义详解
2023-11-25 01:46:20
![](https://img.aspxhome.com/file/2023/4/59884_0s.png)
Java ForkJoin框架的原理及用法
2022-03-13 05:26:51
![](https://img.aspxhome.com/file/2023/5/60935_0s.png)
基于jdk动态代理和cglib动态代理实现及区别说明
2022-04-11 00:32:44
Windows下RabbitMQ安装及配置详解
2022-04-29 08:11:18
![](https://img.aspxhome.com/file/2023/1/62411_0s.png)
java程序员如何编写更好的单元测试的7个技巧
2023-09-05 14:57:24
解决SpringMVC使用@RequestBody注解报400错误的问题
2022-02-26 16:06:43
Java数据结构之线索化二叉树的实现
2022-03-16 15:25:34
![](https://img.aspxhome.com/file/2023/1/75021_0s.png)
SpringBoot使用Thymeleaf模板引擎访问静态html的过程
2023-11-25 10:04:44
![](https://img.aspxhome.com/file/2023/5/60055_0s.png)
springcloud之自定义简易消费服务组件
2022-01-29 00:18:24
![](https://img.aspxhome.com/file/2023/8/61878_0s.png)
C#知识整理
2021-08-02 18:24:26
Java实体类不要使用基本类型的知识点总结
2023-02-21 10:04:49
通过实例解析java8中的parallelStream
2022-04-17 12:59:37
java语言自行实现ULID过程底层原理详解
2023-04-13 22:38:50
![](https://img.aspxhome.com/file/2023/7/69097_0s.png)
JVM代码缓存区CodeCache原理及用法解析
2023-08-09 06:02:29
![](https://img.aspxhome.com/file/2023/8/61768_0s.jpg)
Java实现二分搜索树的示例代码
2023-08-05 10:43:40
![](https://img.aspxhome.com/file/2023/5/62145_0s.png)
简单谈谈java自定义注解
2021-07-21 18:40:53
Unity实现虚拟键盘
2022-05-24 11:25:38
![](https://img.aspxhome.com/file/2023/9/78139_0s.jpg)
springboot整合solr的方法详解
2023-01-20 17:54:37
![](https://img.aspxhome.com/file/2023/0/61580_0s.png)