您的位置:首页 > 编程语言 > C#

C# 通过Exchange server 发送邮件

2014-10-14 19:58 1076 查看
微软的Exchange邮件服务不同与一般的邮件server,他不能简单使用SmtpClient等组件实现邮件收发的功能。

那么怎么通过Exchange服务发送邮件呢?

微软的Exchange服务都有webservice接口, 通过其提供的webservice发送邮件也是最简单的方法。

验证Exchange服务的webservice是否正常:https://xx.xxxxx.com/ews/exchange.asmx, 能打开就是正常。可能须要登录。

可是这个webservice不同于普通的webservice,不能简单的加入web引用来调用。

首先我们须要下载一个Microsoft.Exchange.WebServices.dll,然后引用到我们的项目里边,下载地址http://www.microsoft.com/en-us/download/details.aspx?id=28952,是个msi,安装好之后就有那个dll,然后就能够開始了。。

以下是一个发送邮件的样例:

using Microsoft.Exchange.WebServices;
using Microsoft.Exchange.WebServices.Data;

private void SendEmail()
{
ExchangeService service = new ExchangeService();

// 获取身份验证, 能够尝试你的邮箱名, 域用户ID等
// user: 登录username,邮箱登录ID或者域登录ID
// password:你懂的
// domain:域,不是域名,域用户的的话就得填这个,选填
service.Credentials = new NetworkCredential("user", "password", "domain");
service.TraceEnabled = true;
service.AutodiscoverUrl("zhangsan@yuming.com"); // 这个是发件然的邮箱地址,完整的(xx@dd.com).

EmailMessage message = new EmailMessage(service);
message.Subject = "Email的主题";
message.Body = "Email的内容";
message.ToRecipients.Add("收件人的邮件地址");
message.Save();

message.SendAndSaveCopy();// 发送
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: