Strategies for calling many operations on a single WCF port


  • I use canonical schemas internally in my solutions.  I sometimes find myself in the position where I want to perform (i.e. call) different WCF Actions based on BTS.Operation.  I know the BtsActionMapping does this, but it doesn't help with the mapping challenge.  The issue is the a send port can only have one map with a given source schema type.  I hate having multiple ports to the same service endpoint, but this seems to be the only answer.

    Any suggestions?  Obviously ESB is an idea, but I really hate dynamic send ports.


    If this answers your question, please Mark as Answer

    vendredi 15 juin 2012 16:05

Toutes les réponses

  • Send Port Groups?

    Leonid Ganeline [BizTalk MVP] BizTalkien: Naming Conventions for the BizTalk Solutions

    vendredi 15 juin 2012 23:14
  • Good though, but I mean a single service, with multiple operations, I want to send the same internal (canonical message) and use different maps to call different WCF Actions (i.e. operations).


    If this answers your question, please Mark as Answer

    lundi 18 juin 2012 00:30
  • Dan, what about developing a pipeline component to first use the BRE to find the name of the map and then do the transformation?

    Please mark the post answered your question as answer, and mark other helpful posts as helpful, it'll help other users who are visiting your thread for the similar problem, Regards -Rohit Sharma (

    lundi 18 juin 2012 08:42
  • Having multiple send ports with specific action mapping and specific maps at the send ports is the best configurable solution.

    Having all in one send port will need dynamic map calls inside one master map which internally will apply transformation based on the WCF action .i.e the BTS operation..

    Ritu Raj
    When you see answers and helpful posts,
    please click Vote As Helpful, Propose As Answer, and/or Mark As Answer

    lundi 18 juin 2012 09:06
    Auteur de réponse
  • Doesn't the mapping happen before a pipeline component on Send pipelines?  I know it happens after in receive pipelines.  I've never used the transformation services in ESB on static send ports, so I'm not sure how exactly that would work.  Would I use a promoted property or something to set the map?  I'd really just like to drive it off the Action Mapping.

    Kind Regards,


    If this answers your question, please Mark as Answer

    lundi 18 juin 2012 17:29
  • I think the WCF Routing service could do the magic. It could route on the header values. Really simple.

    Leonid Ganeline [BizTalk MVP] BizTalkien: Advanced Questions

    mardi 28 août 2012 03:12
  • Dan, one more option is the Web-service virtualization. For example, the Nevatec Sentinet can do the routing.

    Leonid Ganeline [BizTalk MVP] BizTalk: Internals: the Partner Direct Ports and the Orchestration Chains

    dimanche 6 janvier 2013 07:52