title: Displaying WCF Web service operations
body: <p>So I've created a WCF service application and hosted it on IIS7. It currently has a few test 'helloworld' methods. When I run it in my browser I get this screen:
  <img src="https://i.stack.imgur.com/GIfiX.png" alt="enter image description here"></p>
  
  <p>Now the service itself works great, but how can I display the operations like this:
  <img src="https://i.stack.imgur.com/jG9TP.png" alt="enter image description here"></p>
  
  <p>Thanks to marc_s for the link: <a href="http://www.dotnetcurry.com/ShowArticle.aspx?ID=399" rel="nofollow noreferrer">http://www.dotnetcurry.com/ShowArticle.aspx?ID=399</a> which I've followed so my web config is now setup like:</p>
  
  <pre><code>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
  &lt;configuration&gt;
    &lt;system.web&gt;
      &lt;compilation debug="true" targetFramework="4.0" /&gt;
    &lt;/system.web&gt;
    &lt;system.serviceModel&gt;
      &lt;services&gt;
        &lt;service name="WcfServer.Service1"&gt;
          &lt;endpoint address="" binding="webHttpBinding" contract="WcfServer.IService1" behaviorConfiguration="HelpBehaviour" /&gt;
        &lt;/service&gt;
      &lt;/services&gt;
      &lt;behaviors&gt;
        &lt;serviceBehaviors&gt;
          &lt;behavior&gt;
            &lt;!-- To avoid disclosing metadata information, set the value below to false and remove the metadata endpoint above before deployment --&gt;
            &lt;serviceMetadata httpGetEnabled="true" /&gt;
            &lt;!-- To receive exception details in faults for debugging purposes, set the value below to true.  Set to false before deployment to avoid disclosing exception information --&gt;
            &lt;serviceDebug includeExceptionDetailInFaults="false" /&gt;
          &lt;/behavior&gt;
        &lt;/serviceBehaviors&gt;
        &lt;endpointBehaviors&gt;
          &lt;behavior name="AjaxBehavior"&gt;
            &lt;enableWebScript /&gt;
          &lt;/behavior&gt;
          &lt;behavior name="HelpBehaviour"&gt;
            &lt;webHttp helpEnabled="true"/&gt;
          &lt;/behavior&gt;
        &lt;/endpointBehaviors&gt;
      &lt;/behaviors&gt;
    &lt;/system.serviceModel&gt;
   &lt;system.webServer&gt;
      &lt;modules runAllManagedModulesForAllRequests="true" /&gt;
          &lt;directoryBrowse enabled="true" showFlags="Date, Time, Size, Extension" /&gt;
    &lt;/system.webServer&gt;
  &lt;/configuration&gt;
  </code></pre>
  
  <p>However, this only works locally. When I publish to my server on IIS7 I get a 404 error page when I click on the help link. Does anyone know why this is, or has come across it before?</p>
  
  <p>(Last bit was solved by running: <code>aspnet_regiis.exe -iru</code>)</p>