当前位置: 首页 > 编程语言 > C#

400错误请求异常:具有小数据共享的简单SOAPWCF服务

时间:2023-04-10 17:33:16 C#

400错误请求异常:具有小数据的简单SOAPWCF服务我有一个使用SOAP的简单WCF服务。我有一个非常简单的操作“GetMultiplied”,数据量非常小。当客户端尝试调用该操作时,出现以下异常。知道可能是什么问题吗?内部异常:{“远程服务器返回错误:(400)错误请求。”}完整的wsdl和模式列在末尾。注意:我已经在服务和客户端配置中将配额值maxBufferSize等设置为更高的值。跟踪服务当我在服务中使用跟踪时(基于如何打开WCF跟踪?),我得到以下信息-似乎没有记录任何错误。308AppDomain卸载。服务实施publicclassCalculationService:ICalculationService{publicvirtualGetMultipliedResponseGetMultiplied(GetMultipliedRequestrequest){MultipliedResultresult=newMultipliedResult();结果.ResultNumber=((request.InputNumber)*2);GetMultipliedResponse响应=newGetMultipliedResponse(result);返回响应;}}客户staticvoidMain(string[]args){CalculationServiceInterfaceClientproxy=newCalculationServiceInterfaceClient();multipliedResult结果=proxy.getMultiplied(2);}在自动生成的代码中,细节是:publicNewClient.CalcReference.multipliedResultgetMultiplied(intinputNumber){inValue.inputNumber=inputNumber;NewClient.CalcReference.getMultipliedResponseretVal=((NewClient.CalcReference.CalculationServiceInterface)(this)).getMultiplied(inValue);返回retVal.restaurants;}WSDLXSDCleint配置(自动生成)我解决了这个问题:-)为了其他人的利益,我将发布答案关键问题:我正在尝试使用手动创建的wsdl。(我在服务中提到了本地副本——我正在使用工具从wsdl生成服务代码)。该服务不提供它。我应该尝试使用WcfTestClient从浏览svc文件运行服务查看wsdl。发出一个错误,表明我们正在使用的项目名称和命名空间应该相同。(否则它将在命名空间名称之前附加项目名称,这将是一个不正确的命名空间)在“VisualStudio命令提示符”中键入“WcfTestClient”命令。http://blogs.msdn.com/b/wcftoolsteamblog/archive/2010/01/04/tips-for-launching-wcf-test-client.aspx通过浏览服务中的svc文件,它显示元数据发布不是启用。在web.config中添加了元数据浏览的服务行为。使用的服务相对路径(而不是本地主机)错误“没有协议绑定匹配给定的地址......”服务跟踪也很有帮助(虽然它在这里没有帮助我)。使用“C:\ProgramFiles\MicrosoftSDKs\Windowsv7.0A\bin\SvcTraceViewer.exe”。在发布之后,错误文件(initializeData="Error.svclog")存储在解决方案项目中。将其更改为其他位置无效。如何启用WCF跟踪?引用WCF服务-两个客户端;一个客户端不行以上就是C#学习教程:400BadRequestexception:SimpleSOAPWCFservicewithsmalldata所有内容分享,如果对大家有用还需要了解更多关于C#学习教程,希望大家点赞多多关注吧——本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处: