Part # 2 - Using C#.Net & Exchange Web Service (EWS) : How to create and send e-mail messages?

In this we will see how to create & send e-mail messages using Exchange Web Service (EWS). It’s pretty simple with EWS to do.

        // Create the Exchange Service Binding
         ExchangeServiceBinding esb = new ExchangeServiceBinding();
  
        // Add its relevant Credentials like user name, password, domain and URL
         esb.Credentials = new NetworkCredential(userName, Password, domain);
         esb.Url = @"https://myexchangeserver/EWS/Exchange.asmx";
  
         // CreateItemType and set its relevant properties/values
         CreateItemType request = new CreateItemType();
        
         // Select Message Disposition specified
         request.MessageDisposition = MessageDispositionType.SendOnly;
         request.MessageDispositionSpecified = true;
       
        // Create MessageType and set its relevant properties/values
         MessageType message = new MessageType();
  
         // Enter value for subject
         message.Subject = subject;
         message.Body = new BodyType();
         message.Body.BodyType1 = BodyTypeType.Text;
  
        // Enter value for body
         message.Body.Value = body;
         message.ToRecipients = new EmailAddressType[1];
         message.ToRecipients[0] = new EmailAddressType();
        
        // Enter ToEmailAddress
         message.ToRecipients[0].EmailAddress = toEmailAddress;
  
        // Select Routing Type
         message.ToRecipients[0].RoutingType = "SMTP";
         request.Items = new NonEmptyArrayOfAllItemsType();
         request.Items.Items = new ItemType[1];
         request.Items.Items[0] = message;
         try
         {
            CreateItemResponseType response = esb.CreateItem(request);
  
            // Determine whether the request was a success.
             if (response.ResponseMessages.Items[0].ResponseClass == ResponseClassType.Error)
             {
                 throw new Exception(response.ResponseMessages.Items[0].MessageText);
             }
             else
             {
                 Console.WriteLine("Item was created");
                 Console.Read(); 
             }
           }
  
           catch(Exception e)
             {
                 Console.WriteLine(e.Message);
                 Console.Read();
             }

Try this code snippet. Happy programming!!