将字符串数组传递给wcf服务错误

时间:2014-02-27 15:58:30

标签: arrays web-services wcf

我有一种方法有时会起作用,但有时它不起作用。它不会抛出错误,而是只返回没有数据。

var infosvc = new InfoServiceClient();
var searchStrings = new string[]
                        {
                            "searchedstring" 
                        };
// if string[] searchStrings  is null then works, otherwise return no data
var status= infosvc.GetDataByParams(74, searchStrings );
infosvc.Close();

以下是网络服务中的定义:

public List<LogEntry> GetDataByParams(int id, string[] searchStrings )

这是服务合同:

[ServiceContract]
public interface IInfoService
{
       [OperationContract]
       List<LogEntry> GetDataByParams(int instanceId, string[] searchStrings);
}

1 个答案:

答案 0 :(得分:0)

我发现有两种方法可行。也许以后我会发现其他的,但我需要快速的分析。 1)序列化数组并将其作为字符串传递给Web服务,然后在Web服务中反序列化 2)如果它是一维数组(主要是),要连接字符串然后在Web服务中拆分它。

这两种方式有点相同,但也不是。