developing adapters for biztalk RRS feed

  • Question

  • Hi,

    we plan to connect biztalk to a system (siemens simatic s7-300), for that no biztalk adapter exists already. our question: is it possible to develop a biztalk adapter for every system you want? if so, how much time should we plan, this would be our first self developed adapter and we have not so much biztalk experience?

    thanks for answers.

    Friday, February 11, 2011 8:26 AM


  • thanks for all answers so far. this is enough stuff at the moment to discuss the this topic with our boss.
    • Marked as answer by Florian Groß Wednesday, February 16, 2011 12:36 PM
    Wednesday, February 16, 2011 12:36 PM

All replies

  • Yes, you can build custom adapters for BizTalk with relative ease.  Obviously the length of time will depend on the complexity of the protocol you're using.

    Get started by looking here: http://msdn.microsoft.com/en-us/biztalk/bb545014

    Use the Adapter Framework to get a quick start in building one.  There are also examples in the SDK included with BizTalk.

    Friday, February 11, 2011 9:00 AM
  • Hi,

    More information here: http://social.msdn.microsoft.com/Forums/en/biztalkgeneral/thread/4d1a70f9-fc73-4476-bfa8-15c5c4fef907

    If you don't have much experience, the alternative is to develop a WCF or Web Service layer that make communication with the product and then use WCF or SOAP adapter in BizTalk.

    Sandro Pereira Blog: http://sandroaspbiztalkblog.wordpress.com/ Please mark as answered if this answers your question.
    Friday, February 11, 2011 10:18 AM
  • Complete walkthrough for developing a WCF-based custom adapter:


    Friday, February 11, 2011 11:47 AM
  • Hi Florian,


    BizTalk custom adapter development has to done very carefully.  The code for the custom adapter can be classified into two sections

    1. Transport protocol specific code. In your case, code to connect Siemens simatic s7-300. Try this code in a c# console application to ensure you can connect Siemens simatic s7-300 using C#.
    2. B izTalk specific code. This code includes both design time and runtime code. Design time codes are the codes which execute during the design time of the adapter. For  example, Similar to File adapter ‘s “Receive Folder”  property, your  adapter may have a design time properties like “Siemens Simatic Server name”, “User  ID”, “Password” which are configurable values during design time. And runtime codes are the code which execute during the runtime of the adapter. 


    When building a custom adapter, developers typically choose one of two different approaches. They take an adapter sample from the SDK and modify it, or they use the BizTalk Adapter Wizard (which use BizTalk Adapter Framework) . The easier option is using the adapter Wizard. This wizard would take inputs like Adapter name, namespace, design properties and creates the template project which will have most of the BizTalk code and deployment files like registry files required for your adapter. You have to write the t ransport protocol specific code inside the “ SubmitBatch() ” method for receive adapter.

    So actual coding should not take much time. But I would suggest having good time and plan for performance and stressing testing. Sometimes you might end up with threading related issues due to the transport protocol specific code, this might affect the throughput of your adapter. Try to use LoadGen to generate message transmission loads to run performance and stress tests for you adapter.

    Development Resource:

    BizTalk Adapter Wizard: http://biztalkadapterwizard.codeplex.com/

    Learning resources:

    Developing Custom Adpters: http://msdn.microsoft.com/en-us/library/aa559841%28v=BTS.10%29.aspx

    Developing Adapters using Adapter Framework: http://msdn.microsoft.com/en-us/library/ee268560%28BTS.10%29.aspx

    Developing Custom Adpter using BizTalk Adpter Framewok: http://msdn.microsoft.com/en-us/biztalk/bb545014

    Testing resources:






    Wednesday, February 16, 2011 10:08 AM
  • All these tool smentioned do a great job and are a serious help in reducing developement time.

    However these tools have problems as well. Have a look here to see how i solved them.


    Well0549, Please remember to click “Mark as Answer” on the post that helps you, and to click “Unmark as Answer” if a marked post does not actually answer your question. This can be beneficial to other community members reading the thread
    • Proposed as answer by Well0549 Wednesday, February 16, 2011 12:02 PM
    Wednesday, February 16, 2011 12:01 PM
  • thanks for all answers so far. this is enough stuff at the moment to discuss the this topic with our boss.
    • Marked as answer by Florian Groß Wednesday, February 16, 2011 12:36 PM
    Wednesday, February 16, 2011 12:36 PM