app.config中的maxReceivedMessageSize和maxBufferSize

Vis*_*til 39 .net c# wcf winforms service-model

如何在运行应用程序之前将app.config文件中的maxReceivedMessageSize和maxBufferSize参数增加到2000000.

mat*_*mmo 63

你需要做的是在你的约束力,但你需要做的两个客户端服务器.就像是:

<system.serviceModel>
    <bindings>
        <basicHttpBinding>
            <binding maxBufferSize="64000000" maxReceivedMessageSize="64000000" />
        </basicHttpBinding>
    </bindings>
</system.serviceModel>
Run Code Online (Sandbox Code Playgroud)


Jac*_*cob 13

您可以在app.config中执行此操作.像那样:

maxReceivedMessageSize="2147483647" 
Run Code Online (Sandbox Code Playgroud)

(最大值是Int32.MaxValue)

或者在代码中:

WSHttpBinding binding = new WSHttpBinding();
binding.Name = "MyBinding";
binding.MaxReceivedMessageSize = Int32.MaxValue;
Run Code Online (Sandbox Code Playgroud)

注意:

如果您的服务对Wide Wide开放,请在增加此值时考虑安全性.


D.R*_*.R. 13

目前接受的答案不正确.它要求设置maxBufferSizemaxReceivedMessageSize在客户端和服务器绑定.这取决于!

如果您的请求太大(即,服务操作的方法参数是内存密集型的),请在服务器端设置属性,如果响应太大(即,服务操作的方法返回值是内存密集型)设置客户端的值.

对于不同的maxBufferSizemaxReceivedMessageSize看到MaxBufferSize属性?.