在客户端的webconfig文件的webservice节点进行如下配置:(注:此处客户端为应用程序的config文件)
<system.serviceModel>
<bindings>
<basicHttpBinding>
<binding name="DeviceServiceSoap" maxBufferSize="2147483647" maxReceivedMessageSize="2147483647"/> </basicHttpBinding> <customBinding> <binding name="DeviceServiceSoap12"> <textMessageEncoding messageVersion="Soap12" /> <httpTransport /> </binding> </customBinding> </bindings> <client> <endpoint address="http://192.168.1.115:8081/DeviceService.asmx" binding="basicHttpBinding" bindingConfiguration="DeviceServiceSoap" contract="DeviceAgent.DeviceServiceSoap" name="DeviceServiceSoap" /> </client> </system.serviceModel>
一般到这即可解决无法客户端接收数据的问题:若依然无法解决,可尝试下面代码,对服务器webservice的webconfig文件进行如下配置:
<system.serviceModel> <serviceHostingEnvironment aspNetCompatibilityEnabled="true" />
<bindings>
<basicHttpBinding>
<binding name="DBService" maxBufferPoolSize="2147483647" maxReceivedMessageSize="2147483647" maxBufferSize="2147483647"> <readerQuotas maxArrayLength="2147483647" maxBytesPerRead="2147483647" maxDepth="2147483647" maxNameTableCharCount="2147483647" maxStringContentLength="2147483647"/> </binding> </basicHttpBinding> </bindings> <standardEndpoints> <webHttpEndpoint> <standardEndpoint name="webservice" maxReceivedMessageSize="4194304000" helpEnabled="true" automaticFormatSelectionEnabled="true" /> </webHttpEndpoint> </standardEndpoints> </system.serviceModel>