当前位置: 代码迷 >> Web Service >> 究竟哪个value参数导致了错误
  详细解决方案

究竟哪个value参数导致了错误

热度:380   发布时间:2012-01-28 22:06:13.0
究竟哪个value参数导致了异常
本人初学C#,现在编写一个WCF服务运行于服务器上,客户机远程调用其中的方法。
调试时,当运行到调用方法的语句时抛出了如下异常:System.ServiceModel.FaultException 1: 值不能为null 参数名:value

我把服务中的代码原封不动地拷贝到客户端代码中,运行正常,未发现任何异常,方法提供的功能都能得到实现。但是一进行服务调用就出现上述异常。我调用的服务为GetURL(String,String,int,bool)形式,为确保传入的参数都不为空,我调试的时候尝试着用常量做参数,但异常仍然在。在客户端进行服务引用时,项目自动添加的Reference.cs中有这样的方法:GetURL(String,String,int,bool){return base.Channel.UploadApp.GetURL(String,String,int,bool)},调用堆栈在这里停留。GetURL是我在WCF服务中实现的协定,用于完成客户端以FTP方式上传文件和入库的请求。

我现在比较疑惑的是,导致异常的value究竟是什么?我觉得应该不是我的参数问题,难道是调用WCF服务过程中的后台代码?而且value这个参数一看就感觉是属性值,但是实在没有针对性,找不到问题的根出在哪里。这个异常卡了我两天了,真急人,还希望各位高手、前辈能多多帮忙,给点建议,不胜感激!!!!!!

------解决方案--------------------
把服务引用地址,直接复制到浏览器地址栏,同样能正常调用到服务并没有报错么?
------解决方案--------------------
简单的做法,你可以用Ethereal 或 wireshark 抓一个请求包,看再实际传输中到底是哪个参数的值为空.
  相关解决方案