none
How to completely get rid of "http://tempuri.org/" within a WSDL?

    Question

  • Hello

    I am developing a WCF web service and I'd like to completely get rid of all http://tempuri.org strings within my WSDL. I am sure, most of you would point me now to Kirill's Blog (http://pluralsight.com/blogs/kirillg/archive/2006/06/18/28380.aspx) about controlling WSDL namespaces.

    But when I rename the service namespace, the contract namespace and all the different schema namespaces as described in the blog, the tempuri namespace is still generated in two places...

    <wsdl:definitions .... xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:i0="http://tempuri.org/" xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy" ....

    ... and in addition another wsdl is exposed:

    <wsdl:import namespace="http://tempuri.org/" location="http://localhost/CalendarSyncWebservice?wsdl=wsdl0" />

    Why does this happen? And how is the first occurence of tempuri related to the second occurence? What does the xmlns:i0 mean?

    I'd like to have my original WSDL but just with renamed tempuri namespaces. How can I do that? Please help. Do I also have to rename the binding namespace in the app.config?

    Kind regards

    Friday, January 05, 2007 6:09 PM

Answers

  • Ok, I just found the answer. I really had to rename the binding namespace in the app.config too. What I did wrong before was, that I only applied it to one endpoint. But my service has two endpoints. Renaming the binding namespace of both endpoints (besides renaming the service namespace, the contract namespace and all the different schema namespaces) solved my problem  :)

    Friday, January 05, 2007 6:20 PM