Sending email message using Exchange Web Service Managed API

Posted by Anuraj on Wednesday, February 4, 2015

.Net ASP.Net ASP.Net MVC Visual Studio

Microsoft Exchange Web Services (EWS) is an interface by which you can programmatically manage Exchange items such as calendar, contact, and email. Microsoft Exchange Web Services is an Application Programming Interface (API) that provides programmatic access to the information and business logic in Microsoft Exchange Server 2007 or later versions. EWS is now an open source project, you can find it in github

To use EWS API, you need to add reference of Microsoft.Exchange.WebServices.dll, you can do it via nuget.

Install-Package Microsoft.Exchange.WebServices

And here is the code snippet, which will send email.

var service = new ExchangeService(ExchangeVersion.Exchange2013);
service.Credentials =
    new WebCredentials("email@example.com", "Password");
service.TraceEnabled = true;
service.TraceFlags = TraceFlags.All;
service.AutodiscoverUrl("email@example.com",
    RedirectionUrlValidationCallback);
EmailMessage email = new EmailMessage(service);
email.ToRecipients.Add("info@example.com");
email.Subject = "HelloWorld";
email.Body = new MessageBody("First email using EWS Managed API");
email.Body.BodyType = BodyType.HTML;
email.Send();

Here is the RedirectionUrlValidationCallback method.

private static bool RedirectionUrlValidationCallback(string redirectionUrl)
{
    var redirectionUri = new Uri(redirectionUrl);
    var result = redirectionUri.Scheme == "https";
    return result;
}

Happy Programming :)



Did you like this article? Share it with your friends

Facebook Twitter Google+ LinkedIn Reddit StumbleUpon



MVP
Subscribe


Copyright © 2017 - Anuraj P. Blog content licensed under the Creative Commons CC BY 2.5 | Unless otherwise stated or granted, code samples licensed under the MIT license. This is a personal blog. The opinions expressed here represent my own and not those of my employer. Hosted with ❤ by GitHub