微软的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();// 发送 }