Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Error sending large byte array

I have WCF service through which I am adding data in DB. It works fine, but when I try to send large byte[] it returns "remote server returned an error: NotFound".

web.config

    <?xml version="1.0"?>
<configuration>
  <connectionStrings>
    <add name="JabsBaseConnectionString" connectionString="Data Source=TAHASAGHIR-PC\SQLEXPRESS;Initial Catalog=JabsBase;Integrated Security=True" providerName="System.Data.SqlClient"/>
  </connectionStrings>
  <system.web>
    <compilation debug="true" targetFramework="4.0">
      <assemblies>
        <add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
      </assemblies>
    </compilation>
    <httpRuntime maxRequestLength="2097151" useFullyQualifiedRedirectUrl="true"/>
  </system.web>
  <system.serviceModel>    
    <serviceHostingEnvironment aspNetCompatibilityEnabled="false" multipleSiteBindingsEnabled="true" />
    <bindings>
      <basicHttpBinding>
        <binding name="SendLargeChat"
                 allowCookies="false"
                 bypassProxyOnLocal="false" 
                 maxBufferPoolSize="2147483647"
                 maxReceivedMessageSize="2147483647"
                 maxBufferSize="2147483647"
                 closeTimeout="10:00:00"
                 openTimeout="10:00:00"
                 receiveTimeout="10:00:00"
                 sendTimeout="10:00:00"
                 transferMode="Streamed">
          <readerQuotas 
            maxArrayLength="2147483647"
            maxBytesPerRead="2147483647"
            maxDepth="2147483647"
            maxNameTableCharCount="2147483647"
            maxStringContentLength="2147483647" />
        </binding>
      </basicHttpBinding>      
    </bindings>
    <services>
      <service name="Prototype.SendChatService" behaviorConfiguration="Prototype.SendChatServiceBehavior">
        <endpoint address="" binding="basicHttpBinding" bindingConfiguration="SendLargeChat" contract="Prototype.SendChatService" />
        <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
      </service>      
    </services>    
    <behaviors>
      <serviceBehaviors>
        <behavior name="">
          <serviceMetadata httpGetEnabled="true" />
          <serviceDebug includeExceptionDetailInFaults="true" />
        </behavior>
        <behavior name="Prototype.SendChatServiceBehavior">
          <serviceMetadata httpGetEnabled="true"/>
          <serviceDebug includeExceptionDetailInFaults="true"/>
          <dataContractSerializer maxItemsInObjectGraph="2147483647"/>
        </behavior>
      </serviceBehaviors>
    </behaviors>
  </system.serviceModel>
  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/>
  </system.webServer>
</configuration>

ServiceReferences.ClientConfig

<configuration>
  <system.serviceModel>
    <bindings>
      <basicHttpBinding>        
        <binding name="BasicHttpBinding_ISendChatService" maxBufferSize="2147483647"
          maxReceivedMessageSize="2147483647">
          <security mode="None" />
        </binding>
      </basicHttpBinding>      
    </bindings>
    <client>      
      <endpoint address="http://localhost:53756/PrototypeSite/SendChatService.svc"
        binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_ISendChatService"
        contract="SendChatService.ISendChatService" name="BasicHttpBinding_ISendChatService" />
    </client>
  </system.serviceModel>
</configuration>

Request POST http://localhost:53756/PrototypeSite/SendChatService.svc HTTP/1.1 Host: localhost:53756 Connection: keep-alive Referer: http://localhost:53756/PrototypeSite/ClientBin/Prototype.xap Content-Length: 1348176 soapaction: "http://tempuri.org/ISendChatService/addMsg" content-type: text/xml; charset=utf-8 Accept: / User-Agent: Mozilla/5.0 (Windows NT 6.1) AppleWebKit/534.24 (KHTML, like Gecko) Chrome/11.0.696.68 Safari/534.24 Accept-Encoding: gzip,deflate,sdch Accept-Language: en-US,en;q=0.8 Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.3

Response HTTP/1.1 400 Bad Request Server: ASP.NET Development Server/10.0.0.0 Date: Thu, 26 May 2011 17:48:00 GMT X-AspNet-Version: 4.0.30319 Cache-Control: private Content-Length: 0 Connection: Close

like image 515
Taha Avatar asked May 26 '11 11:05

Taha


2 Answers

The 404/Not Found is the error Silverlight reports for all server errors. If you want to know the actual error being returned from the server you can use something like Fiddler to view what is being sent and received, including the headers which contain the actual error code and error message returned by the server.

like image 84
David Avatar answered Nov 26 '22 01:11

David


I think you should apply the same

<readerQuotas ...

On the client.

like image 34
TheNextman Avatar answered Nov 26 '22 03:11

TheNextman