加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

.net – 将大型XML从Silverlight发送到WCF

发布时间:2020-12-16 23:15:00 所属栏目:百科 来源:网络整理
导读:我想从Silverlight向WCF SVC服务发送一个大的 XML字符串. 看起来大约50k以下的任何东西都被正确发送但是如果我尝试发送超过该限制的东西,我的请求到达服务器(调用BeginRequest)但从未到达我的SVC.我得到了经典的“NotFound”异常. 关于如何提高这个限制的任
我想从Silverlight向WCF SVC服务发送一个大的 XML字符串.

看起来大约50k以下的任何东西都被正确发送但是如果我尝试发送超过该限制的东西,我的请求到达服务器(调用BeginRequest)但从未到达我的SVC.我得到了经典的“NotFound”异常.

关于如何提高这个限制的任何想法?

如果我不能提高它?我还有什么其他选择?

这是我的绑定配置

<bindings>
        <customBinding>
            <binding name="customBinding0" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647" maxBufferPoolSize="2147483647">
                <binaryMessageEncoding>
        <readerQuotas
            maxArrayLength="2147483647"
            maxBytesPerRead="2147483647"
            maxDepth="2147483647"
            maxNameTableCharCount="2147483647"
            maxStringContentLength="2147483647" />

      </binaryMessageEncoding>
                <httpTransport/>
            </binding>
            <binding name="customBindingSecure" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647" maxBufferPoolSize="2147483647">
                <binaryMessageEncoding>
        <readerQuotas
            maxArrayLength="2147483647"
            maxBytesPerRead="2147483647"
            maxDepth="2147483647"
            maxNameTableCharCount="2147483647"
            maxStringContentLength="2147483647" />
                </binaryMessageEncoding>
                <httpsTransport/>
            </binding>
        </customBinding>
    </bindings>

编辑:更多细节:如果我打破Global.asax Endrequest,我在响应“Bad Request 400”中看到

编辑:再次提供更多详细信息:我激活了跟踪,我可以看到以下错误:已超出传入邮件的最大邮件大小配额(65536).要增加配额,请在相应的绑定元素上使用MaxReceivedMessageSize属性.

但是,我的maxReceivedMessageProperty已设置为2147483647.

解决方法

好吧让它工作!

由于我使用的是customBinding,因此必须在httpTransport元素上设置maxReceivedMessageSize,如下所示:

<bindings>
        <customBinding>
            <binding name="customBinding0" >
                <binaryMessageEncoding>
        <readerQuotas
            maxArrayLength="2147483647"
            maxBytesPerRead="2147483647"
            maxDepth="2147483647"
            maxNameTableCharCount="2147483647"
            maxStringContentLength="2147483647" />

      </binaryMessageEncoding>
                <httpTransport maxReceivedMessageSize="4194304" />
            </binding>
            <binding name="customBindingSecure">
                <binaryMessageEncoding>
        <readerQuotas
            maxArrayLength="2147483647"
            maxBytesPerRead="2147483647"
            maxDepth="2147483647"
            maxNameTableCharCount="2147483647"
            maxStringContentLength="2147483647" />
                </binaryMessageEncoding>
                <httpsTransport  maxReceivedMessageSize="4194304" />
            </binding>
        </customBinding>
    </bindings>

感谢大家的帮助!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读