Click here to Skip to main content
15,891,473 members
Please Sign up or sign in to vote.
5.00/5 (2 votes)
See more:
Hi Guys

I have a web service that I want to send an object that contains a file.

The problem I am getting is that it keeps complaining with a 403 error (Request Entity To Large).

In my app's Web.config I have the following:
<bindings>      
     <basicHttpBinding>
       <binding name="RFServiceSoap" />
       <binding name="BasicHttpBinding_IFeedbackFormService"
             maxBufferSize="6553600"
             maxBufferPoolSize="524288"
             maxReceivedMessageSize="6553600">
         <readerQuotas maxDepth="32" maxStringContentLength="100000"
                       maxArrayLength="16384" maxBytesPerRead="4096"
                       maxNameTableCharCount="16384" />
         <security mode="None" />
       </binding>
        <binding name="BasicHttpBinding_IFeedbackFormService1" />
      </basicHttpBinding>
  </bindings>
  <client>
      <endpoint address="http://localhost:50047/RFService.asmx" binding="basicHttpBinding" bindingConfiguration="RFServiceSoap" contract="RFServices.RFServiceSoap" name="RFServiceSoap" />
      <endpoint
        address="http://localhost/RedfernServices.FeedbackFormService.svc?wsdl"
        binding="basicHttpBinding"
        bindingConfiguration="BasicHttpBinding_IFeedbackFormService"
        contract="FeedbackService.IFeedbackFormService"
        name="RedfernService"
      />
      <!--bindingConfiguration="BasicHttpBinding_IFeedbackFormService"-->
    </client>
  <behaviors>
      <serviceBehaviors>
        <behavior name="">
          <serviceMetadata httpGetEnabled="true" />
          <serviceDebug includeExceptionDetailInFaults="false" />
        </behavior>
      </serviceBehaviors>
    </behaviors>


Then in my web.config (and I've tried the app.config too) on the WCF service has the following:
<system.serviceModel>
   <behaviors>
     <serviceBehaviors>
       <behavior name="">
         <serviceMetadata httpGetEnabled="true" />
         <serviceDebug includeExceptionDetailInFaults="false" />
       </behavior>



       <behavior name="ServiceWithMetadata">
         <serviceMetadata httpGetEnabled="true" />
         <serviceDebug includeExceptionDetailInFaults="false" />
       </behavior>

       <behavior>
         <!-- To avoid disclosing metadata information,
         set the values below to false before deployment -->
         <serviceMetadata httpGetEnabled="True" httpsGetEnabled="True" />
         <!-- 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 -->
         <serviceDebug includeExceptionDetailInFaults="False" />
      </behavior>
     </serviceBehaviors>
   </behaviors>


   <bindings>
     <basicHttpBinding>
       <binding name="LargeSettings"
            maxBufferSize="6553600"
            maxBufferPoolSize="524288"
            maxReceivedMessageSize="6553600">
         <readerQuotas maxDepth="32" maxStringContentLength="100000"
                       maxArrayLength="16384" maxBytesPerRead="4096"
                       maxNameTableCharCount="16384" />
         <security mode="None" />
       </binding>
     </basicHttpBinding>
   </bindings>

   <serviceHostingEnvironment multipleSiteBindingsEnabled="true" />

   <services>
     <service name="RedfernServices.FeedbackFormService"
              behaviorConfiguration="ServiceWithMetadata">
       <endpoint address=""
                 binding="basicHttpBinding"
                 bindingConfiguration="LargeSettings"
                 contract="RedfernServices.IFeedbackFormService">
         <identity>
           <dns value="localhost" />
         </identity>
       </endpoint>
       <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
       <host>
         <baseAddresses>
           <add baseAddress="http://localhost:8733/Design_Time_Addresses/RedfernServices/Service1/" />
         </baseAddresses>
       </host>
     </service>
   </services>

 </system.serviceModel>


After looking on that there tinterweb, I came to the conclusion that what I have should do the trick. But its not. :(

My service and ASP.NET web forms app are both running .NET 4.0. Can anybody see what I have done wrong?

Any help would be greatly appreciated.

Thanks
Posted

1 solution

Hi Paul,

I have answered the same question about two weeks ago. I suggest your problem has something to do with the maximmum size of the message. For further details, see here[^].


cheers,
Marco Bertschi
 
Share this answer
 

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900