Tôi đang sử dụng API WebService ExchangeService (Microsoft.Exchange.WebServices.Data
) nhưng tôi không thể tìm thấy bất kỳ phương thức Close
hoặc Dispose
nào.Vứt bỏ/Đóng ExchangeService trong C#?
Không cần thiết phải đóng kết nối bằng cách nào đó?
Phương pháp của tôi trông như thế này:
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();
// ...
}
Bạn vẫn cần phải đóng các dịch vụ WCF và có một lỗi khó chịu khi gói chúng trong một 'sử dụng', đó là lý do tôi hỏi. Cảm ơn lời giải thích! –
@SimonWoker: Tôi đã tự hỏi bản thân mình như thế nào lớp ExchangeService hoạt động liên quan đến Đóng/Vứt bỏ vì vậy đó là lý do tại sao tôi đã được đào sâu vào nó. Lưu ý rằng EWS không phải là dịch vụ WCF vì nó đã được triển khai theo cách ASMX "cũ kỹ". –
@JakobChristensen: Khi chúng tôi cố gắng kết nối với EWS (sử dụng cùng một thông tin xác thực) nhiều lần, sau 5 lần chúng tôi nhận được sự cho phép bị từ chối lỗi. Điều đó có nghĩa là, EWS giữ kết nối trong khoảng thời gian xác định và không cho phép bất kỳ kết nối nào khác? – Naresh