Single File

Jul 20, 2012 at 2:13 AM
Edited Jul 20, 2012 at 2:22 AM

Created a new service and added this package to it.  Updated the web.config and set 'singlefile' to True.

We have a java programmer attempting to hit the service and retrieve the WSDL, but he is getting 2 WSDL instead of the single file.

Any thoughts on what I may be missing?

 

Here is the web.config snippet:

        <behavior name="Sample.WsdlSampleBehavior">
          <serviceMetadata httpGetEnabled="true" />
          <serviceDebug includeExceptionDetailInFaults="true" httpHelpPageEnabled="false" />
        </behavior>
      </serviceBehaviors>
      <endpointBehaviors>
        <behavior name="Sample.WsdlSampleEndpointBehavior">
          <wsdlExtensions singleFile="true"/>
        </behavior>
      </endpointBehaviors>

    <extensions>
      <behaviorExtensions>
        <add name="wsdlExtensions" type="WCFExtrasPlus.Wsdl.WsdlExtensionsConfig, WCFExtrasPlus, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"/>
      </behaviorExtensions>
    </extensions>
Jul 21, 2012 at 2:43 AM

I created a test WCF service library application on my personal machine using VS2010, and everything works.  I copied the solution onto a USB key and opened it on my work laptop, and it goes back to having a single WSDL with multiple WSDL files in it.

Below is what it looks like on my machine, and on my work machine the 'singleWSDL' doesn't show up.  Same solution, both machines running Windows 7 64 bit and using VS 2010 Ultimate.

Any comments on why the different behavior?


You have created a service.

To test this service, you will need to create a client and use it to call the service. You can do this using the svcutil.exe tool from the command line with the following syntax:



svcutil.exe http://localhost:8080/Service1.svc?wsdl
You can also access the service description as a single file:


http://localhost:8080/Service1.svc?singleWsdl


This will generate a configuration file and a code file that contains the client class. Add the two files to your client application and use the generated client class to call the Service. For example:


C#