我正在使用 Autofac 提供一些 WCF 服务,并且按照教程它工作正常!但是现在,我需要发送一个大于 65Kb 的请求,所以我必须更改服务器上的绑定以允许该请求,但我不知道该怎么做!
如何拦截服务的注入以分配动态创建或在 .config 中定义的绑定?在客户端,我做得正确并且工作正常!
提前致谢,
马克。
我正在使用 Autofac 提供一些 WCF 服务,并且按照教程它工作正常!但是现在,我需要发送一个大于 65Kb 的请求,所以我必须更改服务器上的绑定以允许该请求,但我不知道该怎么做!
如何拦截服务的注入以分配动态创建或在 .config 中定义的绑定?在客户端,我做得正确并且工作正常!
提前致谢,
马克。
最后我找到了解决方案,按照这篇文章。
我已经使用他的配置和我的服务名称重写了配置文件,它可以工作。我之前尝试过,但是没有用;真诚地,我不知道我的错误在哪里。
配置:
<bindings>
<basicHttpBinding>
<binding name="clearHttpBinding">
<security mode="None" />
</binding>
<binding name="secureHttpBinding">
<security mode="TransportWithMessageCredential">
<message clientCredentialType="UserName" />
</security>
</binding>
<binding name="largeMessageHttpBinding" maxBufferSize="10000000"
maxReceivedMessageSize="10000000" messageEncoding="Text" transferMode="Buffered">
<readerQuotas maxArrayLength="10000000" />
<security mode="None" />
</binding>
</basicHttpBinding>
</bindings>
<behaviors>
<serviceBehaviors>
<behavior name="defaultBehavior">
<serviceMetadata httpGetEnabled="true"/>
<serviceDebug includeExceptionDetailInFaults="true"/>
</behavior>
</serviceBehaviors>
</behaviors>
<services>
<service behaviorConfiguration="defaultBehavior" name="my.Services.MyService">
<endpoint address="" binding="basicHttpBinding" bindingConfiguration="largeMessageHttpBinding" contract="my.ServiceModel.ServiceContracts.IMyService"/>
</service>
</services>
希望能帮助到你。