none
Biztalk WCF Schema Change RRS feed

  • Question

  • Hi All,

    basically, I have to add two fields in input and output schemas of WCF-WSHttp service.

    Everything looks good,Here my doubt is, should i publish the schemas again by deleting the existing IIS application, or should i overwrite the existing IIS application?

    if it is overwrite, please tell me how to overwrite(change) the existing IIS Application.

    Thanks,

    Sarva.

    Monday, March 16, 2015 6:33 AM

Answers

  • Hi Sarava,

    If you already have a WCF service where your schemas are exposed as service and if you want to update the exposed service (schema) with few fields, then correct way to update your exposed schema is to rerun the BizTalk-WCF Service Publishing Wizard and select the updated schema’s assembly and in the Wizard select “Overwrite existing location”.

    Obviously you can delete the existing virtual directory and rerun the wizard as new.

    There are other ways to do like just overwrite the updated schema which I would not do when I have legitimate option to overwrite with wizard.


    If this answers your question please mark it accordingly. If this post is helpful, please vote as helpful by clicking the upward arrow mark next to my reply.

    Monday, March 16, 2015 11:44 AM

All replies

  • If its a schema published as WS, you can replace the schema file in the App_Code folder and that should be fine.

    Regards <br/> When you see answers and helpful posts,<br/> please click Vote As Helpful, Propose As Answer, and/or Mark As Answer

    Monday, March 16, 2015 7:34 AM
    Answerer
  • Hi ,

    Both way will work ,Either you can overwrite Virtual directory or delete and expose service again ,

    You also have option just tp replace schema in App folder of IIS Virtual site .

    Thanks

    Abhishek

    Monday, March 16, 2015 9:27 AM
  • Hi Sarava,

    If you already have a WCF service where your schemas are exposed as service and if you want to update the exposed service (schema) with few fields, then correct way to update your exposed schema is to rerun the BizTalk-WCF Service Publishing Wizard and select the updated schema’s assembly and in the Wizard select “Overwrite existing location”.

    Obviously you can delete the existing virtual directory and rerun the wizard as new.

    There are other ways to do like just overwrite the updated schema which I would not do when I have legitimate option to overwrite with wizard.


    If this answers your question please mark it accordingly. If this post is helpful, please vote as helpful by clicking the upward arrow mark next to my reply.

    Monday, March 16, 2015 11:44 AM
  • Unless you expect clients to actually get the Schema by Discovery, meaning WSDL, then you don't have to do anything on the IIS side since everything in the App folder is metadata only.  It is not used at all during any message processing.

    You will have to deploy the updated Schema to BizTalk though just like any other schema.

    Monday, March 16, 2015 12:21 PM
    Moderator
  • The best option will be to do everything again from scratch i.e. Exposing the service again using publishing wizard.

    Here you can choose to overwrite existing application.

    However, these schema files will be present in App_Code folder, so even if you replace the files it will be perfectly okay.

    Also, please understand that IIS doesn't performs any validation on the incoming message, it's only the XML Receive pipeline which will do the schema structure validation. For this it will check the deployed version of schema in database.

    So first thing should be to build your schemas project and deploy it to the server and later you can choose to either re-publish using wizard or replace the schema files in App_Code folder


    Thanks,
    Prashant
    ----------------------------------------
    Please mark this post accordingly if it answers your query or is helpful.

    Tuesday, March 17, 2015 11:55 AM