2012-04-15 28 views
5

Estoy tratando de enviar un correo a través del servicio web de intercambio. Miré en el msdn y encontré algo de ayuda. Cada vez que intenta ejecutar el código que estoy recibiendo el error anterior :( Intento leído en casi todas partes ...error de servicio web de intercambio - el servidor remoto devolvió un error 405 método no permitido

ExchangeService service = new ExchangeService(ExchangeVersion.Exchange2010); 

service.Credentials = new WebCredentials("My user name", "my pass"); 

System.Net.ServicePointManager.ServerCertificateValidationCallback = 
     ((sender, certificate, chain, sslPolicyErrors) => true); 

service.Url = new Uri("my web service url.WSDL"); 
    EmailMessage appointment = new EmailMessage(service); 

appointment.Subject = "Test by me"; 
appointment.Body = "DateTime.Now"; 
appointment.ToRecipients.Add("[email protected]"); 

appointment.SendAnd 

SaveCopy(); 
+0

¿Ha tratado de cambiar WebCredentials con NetworkingCredentials que pasan en el dominio así? ¿y puede AXESS la url asmx en un navegador web? –

+0

Mi mal, es sh debería ser. WSDL y no ASMX. Y sí, puedo acceder a él desde un navegador web. No tengo la opción NetworkingCredentials. – user1334890

Respuesta

15

Al configurar la dirección URL del servicio, debe, de hecho, utilizar el asmx, y no el enlace WSDL.

service.Url = new Uri("https://server/EWS/Exchange.asmx"); 

Eso debería hacer que funcione.

+0

Ok, lo probé. y recibe el siguiente error: "La respuesta recibida del servicio no contenía XML válido". Así es como se ve mi código ahora: service.Url = new Uri ("https://xx.xxx.xxx.xxx:xxxx:EWS/Exchange.asmx"); EmailMessage mail = new EmailMessage (servicio); mail.From = new EmailAddress ("[email protected]"); mail.ToRecipients.Add ("[email protected]"); mail.Subject = "Asunto del correo electrónico"; mail.Body = "Cuerpo del correo electrónico"; mail.Send(); – user1334890

+0

Debe verificar la excepción interna y ver si muestra lo que salió mal. –

+0

Excepción interna: "Falta el elemento raíz" – user1334890

Cuestiones relacionadas