值不能为null参数名称:source

本文关键字:source 参数 不能 null | 更新日期: 2023-09-27 18:20:34

我正在使用以下方法的Web服务:

wsSascar2.SasIntegraWSClient w2 = new wsSascar2.SasIntegraWSClient();
List<wsSascar2.pacotePosicao> lista = w2.obterPacotePosicoes("user", "password", 0).ToList();

但返回以下错误:

值不能为null。参数名称:来源

问题出在我的代码中,还是Web服务的返回?

Web服务:http://sasintegra.sascar.com.br/SasIntegra/SasIntegraWSService?wsdl

谢谢,

值不能为null参数名称:source

obterPacotePosicoes返回的值为空。尝试使用??运算符并提供默认的空数组。

List<wsSascar2.pacotePosicao> lista = 
    (w2.obterPacotePosicoes("user", "password", 0) 
    ?? new wsSascar2.pacotePosicao[0])
        .ToList();

由于ToList不能接受源参数上的null值。

ArgumentNullException源为null。

我认为服务正在返回null。试试下面的代码

wsSascar2.SasIntegraWSClient w2 = new wsSascar2.SasIntegraWSClient();
List<wsSascar2.pacotePosicao> lista  = new List<wsSascar2.pacotePosicao>(); 
var result = w2.obterPacotePosicoes("user", "password", 0);
if(result != null)
   lista  = result.ToList(); 

我刚刚遇到一个在WPF应用程序下使用web服务时得到"value不能为null"的情况。

最终,在释放了一些磁盘空间后,这样的错误消失了,通过填充磁盘进行双重验证,再次抛出相同的错误。

希望得到帮助。