BTS: Sending E-Mail in HTML or Text Format from BizTalk 2004

BTS: Sending E-Mail in HTML or Text Format from BizTalk 2004

I needed to send an e-mail directly from BTS 2004; this was part of an error handling mechanism. However, going through a schema was too much; all I needed is to be able to assemble a string and send it through a SMTP port. As you know, e-mail messages always contain message text, generally in a text or HTML format, and may contain one or more attachments as well. I needed to send the e-mail in HTML format. After going through the SDK and the documentation, I could not find an easy, well-documented solution for this, so I had to assemble the solution attached with this submission.

Sending a message of type System.String will not work because the string gets formatted as an XML document in the message, which is not my desired solution. To send text in an e-mail message, you must use a special type of string, one that has special serialization with the XML; in other words, implements an IFormatter interface. In the attached solution, you will find the "RawString" class that implements IFormatter. You also need to implement a pipeline containing the MIME/SMIME Encoder pipeline component. Now, you have to tell the MIME/SMIME pipeline component that it is dealing with a body with content type of text/HTML through the Microsoft.XLANGs.BaseTypes.XLANGPart.SetPartProperty method.

The solution consists of the following:

  1. A library class that contains the RawString and Part classes to make it easy to set the type of the message.
  2. A BTS project that contain a pipeline to use for sending the e-mail.
  3. A simple orchestration that accepts a simple file schema and just sends the e-mail. The input file in this example is empty. It is just used to fire the orchestration.

I hope this will make your development project easier. Let me know what you think. You can check my blog at http://moustafarefaat.blogspot.com.



About the Author

Moustafa Refaat

Over 15 years of experience developing software solutions, leading the Architecture, Design, and Refactoring of many big projects. At Siemens, led the architecture, design and implementation of the Real time server and Newscaster for the HiPath Pro (A CRM management system). At Bell/ Sympatico MSN web modernization project led the BizTalk development team, responsible for the solution architecture, developing the core framework, mentoring and supporting the team members on the Solution and BizTalk issues. Holds IEEE/CSDP, MCSD(6.0, and .Net) and Oracle certifications. Acts as a referee for the IEEE Software magazine. With International and US experience in financial services automation.

Downloads

Comments

  • There are no comments yet. Be the first to comment!

Leave a Comment
  • Your email address will not be published. All fields are required.

Top White Papers and Webcasts

  • The explosion in mobile devices and applications has generated a great deal of interest in APIs. Today's businesses are under increased pressure to make it easy to build apps, supply tools to help developers work more quickly, and deploy operational analytics so they can track users, developers, application performance, and more. Apigee Edge provides comprehensive API delivery tools and both operational and business-level analytics in an integrated platform. It is available as on-premise software or through …

  • Java developers know that testing code changes can be a huge pain, and waiting for an application to redeploy after a code fix can take an eternity. Wouldn't it be great if you could see your code changes immediately, fine-tune, debug, explore and deploy code without waiting for ages? In this white paper, find out how that's possible with a Java plugin that drastically changes the way you develop, test and run Java applications. Discover the advantages of this plugin, and the changes you can expect to see …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds