locked
BizTalk- publish Orchestration and exposing as WCF service RRS feed

  • Question

  • 1) I already have a sproc developed that BizTalk needs to send data, execute sproc and get response from sproc and send this information out. So I am planning to do this in Orchestration and expose my Orch as WCF service (i.e publish my Orch as ws). What is the best way to approach to this solution ?

    2) how will be wsdl change on moving to higher environments ? like UAT, PROD ?


    MBH

    Monday, June 22, 2015 1:44 PM

Answers

  • 1. Define you own schemas for the external service.  This will protect them from the specific attributes of the WCF Schemas.  Keep them as simple as possible.  Then, it's just a simple messaging and transform app.

    2. It shouldn't change at all.


    Monday, June 22, 2015 4:03 PM
    Moderator

All replies

  • Hi,

    1) I think that if your process does not require a workflow, it'd be better to implement it as a Messaging solution scenario. Instead of publishing an orchestration, do it publishing the schemas as a WCF Service.

    2) The WSDL should not change on movint to higher environments. It must be the same in every environment, only the URL to consume the Service will change.

    Regards


    When an answer is helpful, please vote as helpful, propose as answer and/or mark as answer

    Monday, June 22, 2015 2:09 PM
  • but is it a good approach to expose schemas as WCF service, what I read and remember is not to expose our Internal schema to external clients. Well, can you please tell me step by step procedure to achieve this ?

    2) what is difference between Wsdl does not change but URL changes ?


    MBH

    Monday, June 22, 2015 2:21 PM
  • You should have two set of schemas. Public schemas that will be exposed to the external clients using the WCF publishing wizard and database schemas that will be used to consume database sproc.

    In addition you will need to create maps to do the translation between these schemas. This maps should be set in the Send port used to communicate to the database.

    About the WSDL, once you publish the schemas as a WCF Service, the generated WSDL will be valid for every environment where the application is deployed.

    Regards


    When an answer is helpful, please vote as helpful, propose as answer and/or mark as answer

    Monday, June 22, 2015 2:41 PM
  • I used sql binding and the Strongly TypedProcedures pointing to my Sproc and generated schemas as below. Now, what should I expose as Web service ? The TypedProcedure.dbo.xsd has Request and Response schemas in the schema.


    MBH

    Monday, June 22, 2015 2:48 PM
  • 1. Define you own schemas for the external service.  This will protect them from the specific attributes of the WCF Schemas.  Keep them as simple as possible.  Then, it's just a simple messaging and transform app.

    2. It shouldn't change at all.


    Monday, June 22, 2015 4:03 PM
    Moderator
  • Just to not expose my db schemas, I need to create additional request and response schemas and expose them ?

    MBH

    Monday, June 22, 2015 4:22 PM
  • Just to not expose my db schemas, I need to create additional request and response schemas and expose them ?

    MBH

    Yes correct if you do not want to expose your internal Stored procedure schema you can create request response xsd and try to map with actual stored procedure schema .

    Once map is done you can expose the created schema over IIS .

    Thanks

    Abhishek

    Monday, June 22, 2015 4:27 PM
  • Yes, that is the correct and better way to do it.   The WCF Schemas are pretty specific to their purpose and you 'public' schemas can probably be much simpler.

    Monday, June 22, 2015 4:29 PM
    Moderator