wcf传递列表作为方法参数

Zak*_*aki 5 c# generics wcf list

我有一个wcf服务,其方法如下:

 public void SyncClient(List<Client> client)
        {
         }
Run Code Online (Sandbox Code Playgroud)

然后我在lib解决方案中调用它,该解决方案引用了以下服务:

WCF.SyncClient wcfSer = new WCF.SyncClient();
 List<Client> clientModified = secondservice.Get_Clients(ModifiedDate, modifiedUnt).ToList();
wcfSer.SyncClient(clientModified);
Run Code Online (Sandbox Code Playgroud)

但我继续收到以下错误:

The best overloaded method match for 'SyncClient(SyncLib.ClientWCF.Client[])' has some invalid arguments    
cannot convert from 'System.Collections.Generic.List<SyncLib.Client>' to 'SyncLib.WCF.Client[]'
Run Code Online (Sandbox Code Playgroud)

我唯一要做的就是让列表填充另一个Web服务.

这里的问题是什么,因为我传递的参数是列表,方法接受列表,有人可以指向正确的方向.

Chr*_*int 3

这取决于您添加服务引用的方式。

您可以修改代码以发送 client[]

WCF.SyncClient wcfSer = new WCF.SyncClient();
 var clientModified = secondservice.Get_Clients(ModifiedDate,
    modifiedUnt).ToArray();
wcfSer.SyncClient(clientModified);
Run Code Online (Sandbox Code Playgroud)

或重新添加引用并选择使用 System.Collection.Generic.List 的选项,如下所示;

Select Add Reference
Select URL
Select Advanced when you have found the service.
In Datatype, you will see these options.
Run Code Online (Sandbox Code Playgroud)

选择集合类型为System.Collection.Generic.List