在c#中将ArrayList传递给web服务

本文关键字:web 服务 中将 ArrayList | 更新日期: 2023-09-27 18:14:17

我有一个web服务,应该接收参数数组列表

[WebMethod] 
public void SelectPatches(ArrayList selectedPatches){}

但是当我从客户端Visual Studio调用这个方法时,返回错误:

无法从"System.Collections"转换。ArrayList' to 'object[]'

是否可以将ArrayList类型的参数传递给Web Service?

在c#中将ArrayList传递给web服务

不要使用非泛型集合。使用通用,至少List<object> .

Web方法应该接受任意类型的数组,因此使用ToArray()扩展方法

您可以使用arrayList.ToArray() (MSDN)将ArrayList转换为object[]

您还可以使用arrayList.ToArray(Type) (MSDN)将ArrayList转换为指定类型的数组,而不必单独转换每个元素。