Search code examples
.netenterprise-integration

Integration framework .NET like camel/spring integration


I am currently looking for a good framework to integrate multiple systems with different communication methods like

  • FTP
  • Mail
  • Queue
  • Web Service

in a .NET application. For Java there seem to be a lot of options available, but I could not find anything similar for the .NET platform.


Solution

  • The Workflow Foundations are more suitable for... well.. work flows representing the business logic. You seem to be more interested in integrating existing services. In that case I would focus more on the Windows Communication Foundation. Which were introduced together with the (original) Workflow Foundation. So WCF is part of .NET Versions 3 and above. WCF will support Webservices, Message Queueing and FTP out of the box. For email you will probably need some kind of custom channel. However, it's highly likely that someone else has already written one for you.

    According to Microsoft:

    "Windows Communication Foundation (WCF) is a framework for building service-oriented applications. Using WCF, you can send data as asynchronous messages from one service endpoint to another. A service endpoint can be part of a continuously available service hosted by IIS, or it can be a service hosted in an application. An endpoint can be a client of a service that requests data from a service endpoint. The messages can be as simple as a single character or word sent as XML, or as complex as a stream of binary data."

    This page on MSDN contains resources to help developers get up to speed on developing with Windows Communication Foundation (WCF). Keep in mind, all of this concerns only the communications layer. You'll have to write glue-code yourself.


    If you really want a more "framworky" solution, I'd agree with Tommy Grovnes. 'Service Bus' is the buzzword to search for. In fact Stackoverflow already provides many insights on what services busses are good for, what implementations exist, experiences with them and so on. Especially this question on .NET service busses looks like a promissing start.

    Cheers

    dave