title: Why is this WCF service not recognizing the UriTemplate parameter?
body: <p>I've created the following RESTful WCF service, which works just fine when running it in VS. </p>
  
  <pre><code>[OperationContract]
  [WebGet(ResponseFormat = WebMessageFormat.Json, 
      UriTemplate = "/sales/start={start}&amp;end={end}")]
  List&lt;Sales&gt; GetSalesByDate(string start, string end);
  </code></pre>
  
  <p>However, when deploying this to my test server (running Win2K3 and IIS6) I received the following server error:</p>
  
  <p><em>Operation 'GetSalesByDate' in contract 'ISalesService' uses GET, but also has body parameter 'start'. GET operations cannot have a body. Either make the parameter 'start' a UriTemplate parameter, or switch from WebGetAttribute to WebInvokeAttribute.</em> </p>
  
  <p>Obviously I have already made 'start' a UriParameter. So can anyone tell me why an exception is being thrown?</p>
  
  <p>EDIT:
  For reference, here is my configuration file:</p>
  
  <pre><code>&lt;?xml version="1.0"?&gt;
  &lt;configuration&gt;
      &lt;system.serviceModel&gt;
          &lt;services&gt;
              &lt;service name="Services.SalesService"&gt;
                  &lt;endpoint behaviorConfiguration="webBehavior" 
                            binding="webHttpBinding" 
                            contract="Services.ISalesService"/&gt;
              &lt;/service&gt;
          &lt;/services&gt;
          &lt;behaviors&gt;
              &lt;endpointBehaviors&gt;
                  &lt;behavior name="webBehavior"&gt;
                      &lt;webHttp/&gt;
                  &lt;/behavior&gt;
              &lt;/endpointBehaviors&gt;
          &lt;/behaviors&gt;
      &lt;/system.serviceModel&gt;
  &lt;/configuration&gt;
  </code></pre>