我正在使用ExchangeService WebService API(Microsoft.Exchange.WebServices.Data
),但我找不到任何Close
或Dispose
方法。在C#中处理/关闭ExchangeService?
是否需要以某种方式关闭连接?
我的方法是这样的:
public void CheckMails()
{
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
IMAPCredentials creds = new IMAPCredentials();
service.Credentials = new NetworkCredential(creds.User, creds.Pass, creds.Domain);
service.AutodiscoverUrl(creds.User + "@example.com");
// not the real code from here on but you'll get the idea...
// var emails = service.FindItems();
// emails[0].Load();
// emails[0].Attachments[0].Load();
// ...
}
您仍然需要关闭WCF服务,并且有一个令人讨厌的错误,将它们封装在'using'中,这就是为什么我要问。感谢您的解释! – 2012-02-12 18:10:29
@SimonWoker:我一直在想自己ExchangeService类是如何处理Close/Dispose的,这就是为什么我一直在研究它。请注意,EWS不是WCF服务,因为它已经实现了“老式”ASMX方式。 – 2012-02-12 22:47:40
@JakobChristensen:当我们尝试多次连接到EWS(使用相同的凭据),5次后,我们得到权限拒绝错误。这是否意味着EWS在规定的时间段内保持连接,并且不允许更多的连接? – Naresh 2014-02-27 06:55:03