2016-05-12 7 views
0

Ich habe die anderen Beiträge zu diesem Thema gesehen und denke, ich habe alles versucht und kann nicht scheinen, um diesen Fehler zu beheben, wenn Sie versuchen, eine größere Datei zu speichern. Ich habe die maxReceivedMessageSize und alle anderen größenbezogenen Konfigurationen in beiden Abschnitten der Konfigurationsdateien hochgefahren und auch die uploadReadAheadSize über den IIS-Manager erhöht. Ich sehe nicht, was ich vermisse, also poste ich meine Config-Dateien in der Hoffnung, dass jemand etwas falsch finden könnte.413 Request Entity zu groß WCF

Service-config:

<?xml version="1.0" encoding="utf-8"?> 
<configuration> 
    <configSections> 
     <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=5.0.0.0, Culture=neutral, PublicKeyToken=b77a5c5rge93gerg9" requirePermission="false" /> 
    </configSections> 
    <appSettings> 
    <add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" /> 
    </appSettings> 
    <system.web> 
     <compilation debug="true" targetFramework="4.5" /> 
     <httpRuntime targetFramework="4.5" maxRequestLength="2147483647" /> 
    </system.web> 
    <system.serviceModel> 
     <client> 
     <endpoint address="/" binding="basicHttpBinding" bindingConfiguration="MyHttpBinding" contract="*" name="Default" /> 
     </client> 
    <bindings> 
     <basicHttpBinding> 
      <binding name="MyHttpBinding" hostNameComparisonMode="Exact" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647" transferMode="Streamed"> 
       <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" /> 
      </binding> 
     </basicHttpBinding> 
    </bindings> 
    <behaviors> 
     <serviceBehaviors> 
     <behavior> 
      <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" /> 
      <serviceDebug includeExceptionDetailInFaults="true" /> 
     </behavior> 
     </serviceBehaviors> 
    </behaviors> 
    <protocolMapping> 
     <add binding="basicHttpsBinding" scheme="https" /> 
    </protocolMapping> 
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" /> 
    </system.serviceModel> 
    <system.webServer> 
    <security> 
     <requestFiltering> 
      <requestLimits maxAllowedContentLength="2147483647" /> 
     </requestFiltering> 
    </security> 
    <modules runAllManagedModulesForAllRequests="true" /> 
    <directoryBrowse enabled="true" /> 
    </system.webServer> 
    <connectionStrings> 
    </connectionStrings> 
    <entityFramework> 
     <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" /> 
    </entityFramework> 
</configuration> 

relevanter Teil der Client-config:

<system.serviceModel> 
    <bindings> 
     <basicHttpBinding> 
      <binding name="MyHttpBinding" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647"> 
       <readerQuotas maxDepth="2147483647" maxStringContentLength="2147483647" maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxNameTableCharCount="2147483647" /> 
      </binding> 
     </basicHttpBinding> 
    </bindings> 
<client> 
    <endpoint address="http://Service1.svc" binding="basicHttpBinding" 
    bindingConfiguration="MyHttpBinding" contract="ServiceReference1.IService1" 
    name="MyHttpBinding" /> 
</client> 

+0

Wie groß ist die Datei? –

+0

@AmitKumarGhosh Nur etwa 2 MB – JSchins

Antwort

0

Ich habe keinen <services> Abschnitt in Ihrer Dienstkonfiguration sehen, so dass, obwohl Sie haben Definiert eine Bindung mit größeren Werten, sie wird nicht verwendet, da sie weder als Standardbindung festgelegt noch explizit einem Endpunkt zugewiesen ist. Stattdessen erhalten Sie eine basicHttpBinding mit den Standardkontingenten und -limits.

In Ihrer Situation, die einfachste Lösung ist wahrscheinlich die Service-Konfigurationsdatei fixieren und den <client> Abschnitt entfernen und einen <services> Abschnitt hinzufügen, wie folgt aus:

<services> 
    <service name="MyServiceName"> 
    <endpoint address="/" 
       binding="basicHttpBinding" 
       bindingConfiguration="MyHttpBinding" 
       contract="*" 
       name="Default" /> 
    </service> 
</services> 

Dies wird die „MyHttpBinding“ Konfiguration Ihrer zuweisen Endpunkt.

Beachten Sie, dass Sie auch "MyHttpBinding" als Standardkonfiguration für alle basicHttpBinding Endpunkte festlegen können, indem Sie das Attribut name auslassen.

Verwandte Themen