EWS wsdl.exe autogenerated reference for Exchange
Published: July 16, 2012
Learn about the EWS autogenerated proxy classes.
Applies to: Exchange 2013 | Exchange Online | Office 365
The ExchangeWebServices namespace represents the namespace that is created when you use wsdl.exe or the Add Web Reference dialog box in Visual Studio to generate proxy classes for developing against Exchange Web Services (EWS). The object model in this namespace was created by using wsdl.exe 2.0.
For clients that are based on versions of the .NET Framework starting with the .NET Framework 3.5, we recommend that you use the EWS Managed API to access EWS. For more information, see Get started with EWS Managed API client applications.
The ExchangeWebServices proxy object library is an autogenerated object model that is based on the structure of the EWS WSDL and schema files. This object model implements the relationships between the items in the EWS schema. You can use this object model to serialize and deserialize the EWS XML into .NET Framework objects.
The autogenerated ExchangeWebServices proxy object library is not an intuitive object model because the structure of the EWS schema is not entirely intuitive. Additionally, the proxy object library does not provide Autodiscover capability or any business logic.
You can use the autogenerated proxy library together with the EWS Managed API, or use the EWS Managed API to implement all EWS functionality in your client. The EWS Managed API implements most EWS functionality. For functionality that the EWS Managed API does not implement, you have the following options:
Use the EWS Managed API to perform Autodiscover and then use the autogenerated proxies to serialize and deserialize the XML, and send the requests and handle the responses. You should implement the CookieContainer for the exchangecookie. We also recommend that you implement client latency reporting.
Use the autogenerated proxies to create the object model for storing information about the objects that are not implemented in the EWS Managed API. Then implement an XML serializer and deserializer to handle the XML so that you can pass the XML to WebRequest and WebResponse objects.
Create your own custom objects to store, serialize, and deserialize the EWS XML. Then use WebRequest and WebResponse objects to send and receive your XML messages. If you do this, you do not have to use the ExchangeWebServices proxy object library.