<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    tbwshc

    WCF傳較大數據 例子說明

    在從客戶端向WCF服務端傳送較大數據(>65535B)的時候, 客戶端會報錯。什么遠程服務器沒反應之類的。

    問題是我實際發送的數據是剛剛從WCF服務端接收過來的,一來一去,數據量差別并不大。

    然后發現,在客戶端和服務端實際使用的是不同的配置,對于客戶端,在添加ServiceReference時自動生成的ServiceReferences.ClientConfig文件中system.serviceModel節下有這樣的設置:

    <bindings>
        <basicHttpBinding>
            <binding name="BasicHttpBinding_WcfService" maxBufferSize="2147483647"
                maxReceivedMessageSize="2147483647">
                <security mode="None" />
            </binding>
        </basicHttpBinding>
    </bindings>

    然后在Client節里應用Binding Configuration:

    <client>
                <endpoint address="http://localhost:22000/Service/WcfService.svc"
                    binding="basicHttpBinding" bindingConfiguration="BasicHttpBinding_WcfService"
                    contract="WcfServiceReference.WcfService" name="BasicHttpBinding_WcfService" />

     

    </client>

    在Binding里指定了最大緩存字節數和最大接受字節數,相當于2G的大?。〕莻饕徽走B續劇,一般是夠用了。

    而在服務端,Web.config文件里,Bindings節是空的,而Service也沒有指定bindingConfiguration屬性,那么它們采用的就是默認的65535的大小。

    問題找到,解決就比較容易了:

    在Bindings節添加新的Binding設置,TB指定最大接受數據:

    <bindings>
        <basicHttpBinding>
            <binding name="LargeDataTransferServicesBinding" maxReceivedMessageSize="2147483647"
      messageEncoding="Text" transferMode="Streamed" sendTimeout="00:10:00" />
        </basicHttpBinding>
    </bindings>

    之后給相應的Service指定bindingConfiguration屬性:

    <service behaviorConfiguration="Server.Service.WcfServiceBehavior"
      name="Server.Service.WcfService">
      <endpoint address="" binding="basicHttpBinding" bindingConfiguration="LargeDataTransferServicesBinding" contract="Server.Service.WcfService" />
      <endpoint address="mex" binding="mexHttpBinding" contract="IMetadataExchange" />
    </service>

    這樣就可以從客戶端發送足夠大的數據了。

    P.S.:

    asp.net默認只能傳4M的文件,所以盡管設定了Wcf兩端的配置,還是超不出.net的限定,所以如果要傳輸大文件,還需要在System.Web節下加上

        <httpRuntime maxRequestLength="102400" />
    這里的單位是KB,這樣就可以傳100M的文件了。當然,這么大的文件,最好還是分段傳輸比較好。

    posted on 2012-06-26 16:20 chen11-1 閱讀(1125) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 少妇无码一区二区三区免费| 亚洲夜夜欢A∨一区二区三区| 在线看片免费人成视频播| 亚洲一卡2卡三卡4卡无卡下载 | 亚洲精品综合在线影院| 亚洲成人午夜在线| 亚洲真人无码永久在线| 国产一区二区三区免费视频| 51精品视频免费国产专区| a视频在线免费观看| 人妻巨大乳hd免费看| 久久精品国产亚洲av品善| 男人天堂2018亚洲男人天堂| 亚洲精品成人久久| 亚洲第一区香蕉_国产a| 亚洲日韩精品一区二区三区无码| 免费一级国产生活片| 在线观看免费亚洲| 国产高清免费的视频| 在线播放高清国语自产拍免费| 希望影院高清免费观看视频| 狼群影院在线观看免费观看直播| 国产免费拔擦拔擦8X高清在线人| 亚洲一区二区三区免费| 日韩免费在线中文字幕| 九一在线完整视频免费观看| 黄色免费网址在线观看| 日本高清不卡中文字幕免费| 美女又黄又免费的视频| 免费精品国产自产拍在线观看| 看亚洲a级一级毛片| 男女污污污超污视频免费在线看| 黄色三级三级三级免费看| 国产午夜亚洲精品不卡| 无套内射无矿码免费看黄| 免费无码午夜福利片| jizz在线免费观看| 国产一二三四区乱码免费| 野花香在线视频免费观看大全| 女人体1963午夜免费视频| 最好看最新的中文字幕免费|