C#连接Exchange 发送邮件代码如下

/// <summary>
/// exchange群发邮件
/// </summary>
/// <param name="credentialUserName">exchange用户名 [example: test]</param>
/// <param name="credentialUserPwd">exchange用户密码</param>
/// <param name="fromEmail">发送人地址 [example: test@allbring.com]</param>
/// <param name="recipientEmail">收件人地址</param>
/// <param name="domainName">邮件域名 [example: mail.allbring.com]</param>
/// <param name="subjectName">邮件主题</param>
/// <param name="bodyVal">邮件内容</param>
/// <param name="isHtml">是否为html</param>
/// <param name="fileArray">发送上传的路径</param>
/// <returns></returns>
/// 开发人员:ZJ
public static bool SendExchangeEmails(string credentialUserName, string credentialUserPwd, string fromEmail, List<string> recipientEmail, string domainName, string subjectName, string bodyVal, bool isHtml, string[] fileArray)
{
try
{
MailMessage message = new MailMessage();
MailAddress fromAddress = new MailAddress(fromEmail);
foreach (string item in recipientEmail)
{
message.To.Add(item);
}
message.From = fromAddress;
message.Subject = subjectName;
message.Body = bodyVal;
message.IsBodyHtml = isHtml;
if (fileArray != null)
{
for (int i = 0; i < fileArray.Length; i++)
{
//为邮件创建文件附件
Attachment attr = new Attachment(fileArray[i], MediaTypeNames.Application.Octet);
//添加邮件时间戳信息
ContentDisposition conDispositon = attr.ContentDisposition;
conDispositon.CreationDate = System.IO.File.GetCreationTime(fileArray[i]);//文件的创建日期
conDispositon.ModificationDate = System.IO.File.GetLastWriteTime(fileArray[i]);//文件的修改日期
conDispositon.ReadDate = System.IO.File.GetLastAccessTime(fileArray[i]);//文件的读取日期
//给邮件添加附件
message.Attachments.Add(attr);
}
} SmtpClient smtpClient = new SmtpClient();
smtpClient.Timeout = 50000;
smtpClient.Host = domainName;
smtpClient.Port = 25;
smtpClient.UseDefaultCredentials = false;
smtpClient.Credentials = new System.Net.NetworkCredential(credentialUserName, credentialUserPwd);
smtpClient.EnableSsl = true;
smtpClient.DeliveryMethod = SmtpDeliveryMethod.Network;
smtpClient.Send(message);
smtpClient.Dispose();
return true;
}
catch (Exception)
{
return false;
}
}

如果exchange服务器只做了证书,在发送邮件的机器上也要安装证书邮件才能发送出去。

参考地址:https://social.technet.microsoft.com/Forums/en-US/d37c7e8a-6d42-498a-bad4-5eb0ab7e9d40/connecting-to-exchange-server-using-c-to-send-an-email?forum=exchangesvrdevelopment

http://www.systemnetmail.com/faq/2.4.aspx

最新文章

  1. Morris post order traversal algorithm
  2. 使用SVG图像作为loading加载 以保证图像高清不模糊
  3. 百度UEditor基本使用
  4. [py]简易pick lucky num程序
  5. HTML页面表单输入框去掉鼠标选中后边框变色的效果
  6. python_列表
  7. NandFlash驱动框架
  8. 简化的nginx多进程模型demo
  9. 将文件放到Android模拟器的SD卡中的两种解决方法
  10. 【Hexo】Hexo+Github构建个人博客 (三):添加皮肤主题
  11. 对ajax请求的简单封装,操作更方便
  12. SpringCloud学习笔记(7)——Sleuth
  13. public private protected default小结
  14. Spring Data JPA Batch Insertion
  15. STM32应用实例十:简析STM32 I2C通讯死锁问题
  16. linux export source
  17. SpringMVC配置及使用
  18. 2-Sixth Scrum Meeting20151206
  19. CodeChef March Challenge 2019题解
  20. 云端办公是 Office系统的未来方向么 ?

热门文章

  1. ZROI2018提高day3t3
  2. ARC061E Snuke&#39;s Subway Trip
  3. Mat的迭代器使用
  4. Python学习笔记--2--面向对象编程
  5. Spring-访问静态资源文件的方法
  6. Bugly升级应用集成指南
  7. SQL SERVER 取本月上月日期
  8. Unity3D 接口使用
  9. vs code进行c/c++开发
  10. 访问其他电脑的c盘