MessageHandler MH Sign Up

Downstream Activity Quickstart


This quickstart gives you an example implementation of a downstream activity.


Clone the source code from Github before you get started.


In this scenario you will send a changeconsolecolor command remotely, through an API, to instruct the Worker process to change its output color.

Any color represented by the ConsoleColor enum is supported.

Note: the logging infrastructure has its own color coding and won't follow the change

What you need to get started

Running the sample

Prior to running the sample, you need to configure the user secrets file.

In the secrets file you must specify the following configuration values.

  "servicebusnamespace": "your azure service bus connection string goes here",

Also ensure a queue named control is created in the service bus namespace.

Once configured you can start the API & Worker, or run the unittests.

Designed with testing in mind

MessageHandler is intented to be test friendly.

This sample contains plenty of ideas on how to test a downstream activity without requiring a dependency on an actual broker instance, and thus keep the tests fast.

  • Component tests: To test the activity logic and it's interaction with the email service.
  • Contract tests: To verify that the test doubles used in the component tests are behaving the same as an actual dependency would. Note: contract verification files are often shared between producers and consumers of the contract.

How to implement it yourself

Check out this how to guide to learn how to configure a downstream activity yourself.

Sign up to our newsletter to get notified about new content and releases

You can unsubscribe at any time by clicking the link in the footer of your emails. I use Mailchimp as my marketing platform. By clicking subscribe, you acknowledge that your information will be transferred to Mailchimp for processing. Learn more about Mailchimp's privacy practices here.