none
Regarding Mex & WSDL issue in WCF RRS feed

  • Question

  • what is the importance of this setting httpGetEnabled="false" or httpGetEnabled="true" what will happen if we set httpGetEnabled="false"

    suppose if i want any .Net 2.0 client can consume my wcf service which has been developed by .Net 4.0 then how should i develop the wcf service. once i read that if any client need to consume my wcf service then we need to set httpGetEnabled="true" as a result they can consume ny wcf service through wsdl. things was not ver clear so if possible please in more details how wcf service expose through wsdl.

    in wcf mex is also there to expose meta data. so i like to know what is the difference between mex & wsdl?

    what mex offer more than wsdl? people said mex is configurable but wsdl is not...what does it mean? need details.

    if we search Google to see how wsdl envelope looks like then we get ample of link but i found none for how mex envelope look like searching Google. so please help me to visualize how mex meta data structure look like.

    if we remove mex endpoint from service config then how other client can consume my service? other client can consume my service then through wsdl if yes then how ?

    what url i need to enter to have the wsdl of any wcf service ? if `httpGetEnabled="false then wsdl will be possible or not.

    here i asked couple of quetion on mex & wsdl. i am new so bit confused about mex & wsdl usage in wcf. if possible please give me good write up about all my points.

    another question is that what is the usage of soap in wcf & relation. thanks

    Tuesday, February 4, 2014 7:32 PM

Answers

  • Hi,

    >>what is the importance of this setting httpGetEnabled="false" or httpGetEnabled="true"what will happen if we set httpGetEnabled="false"

    When you're adding a service reference, which generates a proxy based on Metadata Exchange (mex). The httpGetEnabled configuration lets you set an http endpoint that would allow a non-mex proxy to be generated using WSDL, such as a legacy .NET webservice proxy. They are different protocols, controlled by different settings. I believe if you were to have <serviceMetadata httpGetEnabled="true" httpGetUrl="http://localhost:8080/SampleService?wsdl"/> you could add a web service reference from .NET 2.0, and you would be unable to do that using the configuration <serviceMetadata httpGetEnabled="false"/>.

    >>in wcf mex is also there to expose meta data. so i like to know what is the difference between mex & wsdl

    Service metadata exposes a wsdl file usually through http or https get urls that you can't really configure (say for security limitations).

    MEX endpoints expose metadata over configurable endpoints, and can use different types of transports, such as TCP or HTTP, and different types of security mechanisms.

    So MEX are more configurable, while WSDL is more interoperable with older versions of clients and non-.net clients that work with WSDLs.

    And you can get the wsdl by enter the uri:
    http://localhost:8080/SampleService?wsdl

    Also please try to check this blog for more information:
    http://blogs.microsoft.co.il/blogs/idof/archive/2011/08/10/wsdl-vs-mex-knockout-or-tie.aspx .

    >>another question is that what is the usage of soap in wcf & relation:

    With SOAP, your messages can be sent to the service using any transport protocol -- you aren't tied to HTTP. SOAP messages are designed to be transport neutral. They are encoded in XML and the XML always has a head and a body node inside of an envelope node. There are lots of web standards around SOAP -- standards for putting security, sessions and other features into the header of the message, for example. Also, with SOAP, you get a WSDL, which I won't go into explaining here, but it makes it a LOT easier for clients to program against. Most programming languages have a method of taking a WSDL and converting it into strongly-typed methods and objects so that your service is easy to call.

    Best Regards,
    Amy Peng


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.


    Thursday, February 6, 2014 7:13 AM
    Moderator