2014-09-21 3 views
0

EWS 서비스에서 AutodiscoverUrl 호출을 사용하여이 오류를 계속 찾고이 오류를 계속 시도했습니다.자동 검색 서비스를 C#에서 찾을 수 없지만 Outlook에서 작동합니다.

은 웹 크레딧, 네트워크 크레딧 및 없음을 제공하려고 시도했습니다. service.Url 속성을 직접 설정하면 작동합니다. EWS는 아무런 문제없이 전화를 걸 수 있습니다.

오류 발생시 호출 스택입니다.

A first chance exception of type 'System.Security.Authentication.AuthenticationException' occurred in System.dll 
A first chance exception of type 'System.Security.Authentication.AuthenticationException' occurred in System.dll 
A first chance exception of type 'System.Security.Authentication.AuthenticationException' occurred in System.dll 
A first chance exception of type 'System.Security.Authentication.AuthenticationException' occurred in System.dll 
A first chance exception of type 'System.ObjectDisposedException' occurred in System.dll 
A first chance exception of type 'System.Net.WebException' occurred in System.dll 
A first chance exception of type 'System.Net.Sockets.SocketException' occurred in System.dll 
A first chance exception of type 'System.Net.WebException' occurred in System.dll 
A first chance exception of type 'System.Net.WebException' occurred in System.dll 
A first chance exception of type 'System.Net.WebException' occurred in System.dll 
A first chance exception of type 'System.Security.Authentication.AuthenticationException'  occurred in System.dll 
A first chance exception of type 'System.Security.Authentication.AuthenticationException' occurred in System.dll 
A first chance exception of type 'System.Security.Authentication.AuthenticationException' occurred in System.dll 
A first chance exception of type 'System.Security.Authentication.AuthenticationException' occurred in System.dll 
A first chance exception of type 'System.ObjectDisposedException' occurred in System.dll 
A first chance exception of type 'System.Net.WebException' occurred in System.dll 
A first chance exception of type 'System.Net.WebException' occurred in System.dll 
A first chance exception of type 'Microsoft.Exchange.WebServices.Dns.DnsException' occurred in Microsoft.Exchange.WebServices.dll 
A first chance exception of type 'Microsoft.Exchange.WebServices.Data.AutodiscoverLocalException' occurred in Microsoft.Exchange.WebServices.dll 
A first chance exception of type 'System.Security.Authentication.AuthenticationException' occurred in System.dll 
A first chance exception of type 'System.Security.Authentication.AuthenticationException' occurred in System.dll 
A first chance exception of type 'System.Security.Authentication.AuthenticationException' occurred in System.dll 
A first chance exception of type 'System.Security.Authentication.AuthenticationException' occurred in System.dll 
A first chance exception of type 'System.ObjectDisposedException' occurred in System.dll 
A first chance exception of type 'System.Net.WebException' occurred in System.dll 
A first chance exception of type 'System.Net.Sockets.SocketException' occurred in System.dll 
A first chance exception of type 'System.Net.WebException' occurred in System.dll 
A first chance exception of type 'System.Net.WebException' occurred in System.dll 
A first chance exception of type 'System.Net.WebException' occurred in System.dll 
A first chance exception of type 'System.Security.Authentication.AuthenticationException' occurred in System.dll 
A first chance exception of type 'System.Security.Authentication.AuthenticationException' occurred in System.dll 
A first chance exception of type 'System.Security.Authentication.AuthenticationException' occurred in System.dll 
A first chance exception of type 'System.Security.Authentication.AuthenticationException' occurred in System.dll 
A first chance exception of type 'System.ObjectDisposedException' occurred in System.dll 
A first chance exception of type 'System.Net.WebException' occurred in System.dll 
A first chance exception of type 'System.Net.WebException' occurred in System.dll 
A first chance exception of type 'Microsoft.Exchange.WebServices.Dns.DnsException' occurred in Microsoft.Exchange.WebServices.dll 
A first chance exception of type 'Microsoft.Exchange.WebServices.Data.AutodiscoverLocalException' occurred in Microsoft.Exchange.WebServices.dll 


An unhandled exception of type 'Microsoft.Exchange.WebServices.Data.AutodiscoverLocalException' occurred in Microsoft.Exchange.WebServices.dll 

Additional information: The Autodiscover service couldn't be located. 

또한 DNS 항목 자동 검색을 통해 Exchange 서버에 ping을 수행 할 수 있는지 확인했습니다. SCP에 대한 광고를 확인했는데 괜찮아 보입니다. Outlook은 Autodiscover에 아무런 문제가 없음을 발견 할 수 있습니다. 내 코드 만이 할 수 없습니다.

내 컴퓨터가 모두 가상 서브넷의 Azure VM입니다.

내 코드 :

ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2013_SP1); 
service.AutodiscoverUrl("[email protected]"); // Exception is thrown here 
+0

시도해 볼 수있는 두 가지 방법은 먼저 스택 추적에 대한 자세한 정보를 제공하는 추적을 사용하도록 설정하는 것입니다. 다른 것은 https://testconnectivity.microsoft.com/ –

+0

을 사용하여 Autodiscover 구성을 테스트하는 것입니다. 추적 기능을 사용할 수 있으며 추적 기능을 호출하지도 않습니다. 추적 코드가 작업 코드를 추적하여 작동하는지 확인했습니다. 내가 공유 한 테스트 페이지를 살펴 보았지만 인터넷을 통해 작동하도록하는 방법을 알아야합니까? 또는 해당 페이지가 인트라넷에서 작동합니까? 또 다른 모습을 보일 것입니다 –

+0

인트라넷을 통해 작동하지 않는다면 일반적으로 대부분의 사람들에게 해당되는 Autodiscover를 외부에서 노출시켜야합니다 (그렇지 않으면 Activesync 등은 작동하지 않습니다). 또 다른 테스트는 http://ewseditor.codeplex.com/을 시도하는 것입니다. 그러면 코드 외부에서 Managed API 및 EWS를 테스트 할 수 있습니다. –

답변

1

디 컴파일 후 예외를 디버깅가 발생되고, 나는 인해 자체 서명 인증서를 사용하는 것이 자동 검색 URL을 사용할 수있게되지 않았 음을 발견했다.

http://blogs.msdn.com/b/robert_mcmurray/archive/2013/11/15/how-to-trust-the-iis-express-self-signed-certificate.aspx

이 URL은 인증 기관이 Internet Explorer에서 폴더를 신뢰할 수있는 루트에 인증서를 복사하는 방법을 보여줍니다. 나는 관리자로서 IE를 실행하고 그것을 복사했다. 이제 나의 코드가 작동한다. 그것은 인증되지 않았다고 말하는 또 하나의 예외를 쳤지 만 그것이 그때 로그인 자격 증명을 사용하는 곳이라고 생각합니다.

그래서 인증서를 신뢰하는 것이 내 문제에 대한 답변이었습니다.