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

  • Live Event Date: August 14, 2014 @ 2:00 p.m. ET / 11:00 a.m. PT Data protection has long been considered "overhead" by many organizations in the past, many chalking it up to an insurance policy or an extended warranty you may never use. The realities of today make data protection a must-have, as we live in a data driven society. The digital assets we create, share, and collaborate with others on must be managed and protected for many purposes. Check out this upcoming eSeminar and join eVault Chief Technology …

  • Where the business performance of their mobile app portfolios are concerned, most companies are flying blind. While traditional application portfolios are held to all kinds of ROI measure, the investment plan for mobile apps -- increasingly the more crucial bet -- is made by guesswork and dart-throwing. This interactive e-book investigates how mobile is driving the need for app and portfolio measures unlike any we saw in the days of web. Good mobile analytics must deliver leading indicators of user experience …

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds