我想在我的公司中最簡單的事情就是檢索郵件。我試圖通過Imap - 沒有成功,(ImapX根本不連接,沒有顯示錯誤),我來到EWS。如何連接到Exchange?
但也有一些voo-doo魔術參與。 這裏是有一些錯誤代碼:
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
service.TraceEnabled = true;
service.TraceFlags = TraceFlags.All;
service.UseDefaultCredentials = true;
service.Url = new Uri("https://some.com/EWS/Exchange.asmx"); // The request failed. Unable to connect to the remote server
var folder = Folder.Bind(service, WellKnownFolderName.Inbox);
///////////////////another try
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
service.TraceEnabled = true;
service.TraceFlags = TraceFlags.All;
service.UseDefaultCredentials = true;
service.AutodiscoverUrl("[email protected]"); // Discover server not found
var folder = Folder.Bind(service, WellKnownFolderName.Inbox);
不過,我能連接到WSDL版本:
ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2007_SP1);
service.TraceEnabled = true;
service.TraceFlags = TraceFlags.All;
service.UseDefaultCredentials = true;
service.Url = new Uri("https://some.com:444/EWS/Services.wsdl");//Wow! It worked.
var folder = Folder.Bind(service, WellKnownFolderName.Inbox);//duh, Method Not Allowed ........
return null;
如何赫克我連接到EWS?我可以通過Outlook進行連接,並從我的域帳戶的Autodiscover.xml文件中獲取所有地址。這個問題吹了我的腦袋。
UPDATE
這裏是例如與IMAP服務器:
var client = new ImapX.ImapClient("imap.some.com", 993, true);
client.Connect(); //just do nothing. nothing is connected, no errors.
鑑於*所有*電子郵件客戶端可以使用POP3和IMAP4連接到Exchange ,你應該解釋你所嘗試的是什麼以及問題是什麼。 Outlook不使用Web服務進行連接,它使用IMAP4 –
至於你的代碼 - Web服務是由WSDL *定義的。沒有「WSDL版本」。如果您使用WSDL URL生成代理,則甚至不需要指定URL,它將作爲默認地址存儲在代理本身中。 –
最後 - 您的第一個和第二個URL不*使用相同的端口。 SSL使用端口443.第二個URL使用端口444 –