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

  • Hybrid cloud platforms need to think in terms of sweet spots when it comes to application platform interface (API) integration. Cloud Velocity has taken a unique approach to tight integration with the API sweet spot; enough to support the agility of physical and virtual apps, including multi-tier environments and databases, while reducing capital and operating costs. Read this case study to learn how a global-level Fortune 1000 company was able to deploy an entire 6+ TB Oracle eCommerce stack in Amazon Web …

  • "Security" is the number one issue holding business leaders back from the cloud. But does the reality match the perception? Keeping data close to home, on premises, makes business and IT leaders feel inherently more secure. But the truth is, cloud solutions can offer companies real, tangible security advantages. Before you assume that on-site is the only way to keep data safe, it's worth taking a comprehensive approach to evaluating risks. Doing so can lead to big benefits.

Most Popular Programming Stories

More for Developers

Latest Developer Headlines

RSS Feeds